여러 options 연결, select 간 난 서
4770 단어 JavaScript태그 연결
showOptions: 합 법성 을 고려 하지 않 은 상태 에서 options 의 조건 을 모두 문서 에 표시 합 니 다. 이전에 선 택 된 option 이 선택 되 었 습 니 다. checkOptions () 를 실행 합 니 다. 문서 의 조건 합 법성 을 검사 하고 비합법적 인 옵션 은 삭 제 됩 니 다.
$(document).ready(function(){
(function(){
var Main = {//
init:function(){
}
};
var Search = {//
options: [],
tempOptions:[],
init: function(){
this.getOptions();
this.showOptions();
this.checkOptions();
this.eventAttach();
},
getOptions: function(){
//OM:option
this.options = {
XWLB:{
type: "OM",
n: " ",//
o: [//options value, ,
[""," ",""],
["201"," ","{type} == 1 || {type} == 5"],
["202"," ","{ZYDM} == '010101' || {ZYDM} == '010102'"]
]//
},
ZYDM:{
type: "OM",
n: " ",
o: [
[""," ",""],
["010101","Max ",""],
["010102","Max ",""]
]
}
};
},
showOptions: function(s){
var html = "<table><tr>";
var n = 0;
for(var i in this.options){
n ++;
if(!(n % 3)) html += "</tr><tr>";
var op = this.options[i];
html += "<td>" + op.n + "</td>";
switch(op.type){
case "OM": {
html += "<td><select id='" + i + "' name='" + i + "'>";
var temp = $("#" + i).val();// selected
for(var j in op.o){
var o = op.o[j];
if(temp == o[0]){// ,
html += "<option selected='selected' id='i" + o[0] + "' value='" + o[0] + "'>" + o[1] + "</option>";
}else html += "<option id='i" + o[0] + "' value='" + o[0] + "'>" + o[1] + "</option>";
}
html += "</select>";
}
break;
}
html += "</td>";
}
html += "</tr></table>";
$(".right").html(html);
this.eventAttach();
},
checkOptions: function(){//
for(var i in this.options){
var op = this.options[i];
switch(op.type){
case "OM":{
for(var j in op.o){
var o = op.o[j];
if(o[2] != ""){//
var flag = eval(o[2].replace(/{([A-Za-z0-9_]+)}/g,"$('#$1').val()"));
if(!flag) $("#i" + o[0]).remove();// ,
}
}
}break;
}
}
},
getParameter: function(){
},
eventAttach: function(){
var _this = this;
$(".right select").change(function(){
_this.showOptions();
_this.checkOptions();
});
},
unbindEvent: function(){
$(".right select").unbind("change");
}
};
Search.init();
})();
});
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
기초 정리 - 1문자 (String) 숫자 (Number) 불린 (Boolean) null undefined 심볼 (Symbol) 큰정수 (BigInt) 따옴표로 묶어 있어야 함 Not-A-Number - 숫자 데이터 / 숫자로 표...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.