Javascript 如何进行动态不可重复选择
我尝试创建动态输入组 我的期望值是 动态选择框[配置中的长度<代码>变量参数代码>],带有Javascript 如何进行动态不可重复选择,javascript,jquery,html,Javascript,Jquery,Html,我尝试创建动态输入组 我的期望值是 动态选择框[配置中的长度变量参数],带有 非重复选择选项-->我在单击、删除和追加时进行检查 可以单击添加/删除输入组 受var参数限制 所以现在我的实际结果是 不隐藏将是附加上一个select的newselect中的select选项 删除选择无法检查删除后的重复 但是在我点击后一些地方会恢复正常,因为我点击的项目仍然没有更新 所以这里有很长的代码 谢谢收看 var参数=[ “A” ,“B” ,“C” ,“D” ]; $(文档).ready(函数(e){ $
选择选项
-->我在单击、删除和追加时进行检查var参数限制
select
的newselect
中的select选项var参数=[
“A”
,“B”
,“C”
,“D”
];
$(文档).ready(函数(e){
$('div.multiselect')。追加('');
$('div.multiselect').append('add search parameter');
$('div.multiselect')。追加('search');
addSelect();//首先创建
$('div.multiselect.addlist')。单击(函数(){
addSelect();
});
});
(函数($){
var origAppend=$.fn.append;
$.fn.append=函数(){
return origAppend.apply(这是参数).trigger(“append”);
};
})(jQuery);
var selectblock=函数(){
外部变量=$(document.createElement(“div”)).addClass(“输入组”);
var inside=$(document.createElement(“选择”)).addClass(“自定义选择”)。打开(“单击附加”,选中重复);
var-selVal=[];
$(“div.multiselect.selectlist div.input-group”)。每个(函数(){
selVal.push($(this.find)(“select”).val());
});
if(selVal.length==parameter.length){
警报(“无法添加更多参数”);
返回;
}
对于(变量i=0;i-1){
option.attr(“disabled”、“disabled”).hide();
}
inside.append(选项);
}
外部。追加(内部);
append($(document.createElement(“input”)).attr('Type','Text').addClass('form-control'));
var delbtn=$(document.createElement(“按钮”)).text(“X”).addClass(“btn btn危险输入组追加dellist”);
delbtn.单击(函数(){
$(this.parent().remove();
检查重复;
});
附加(delbtn);
返回外部;
};
函数addSelect(){
$('div.multiselect.selectlist')。追加(selectblock);
检查重复;
}
var checkRepeat=函数(){
//log('trigger');
var-selVal=[];
$(“div.multiselect.selectlist div.input-group”)。每个(函数(){
selVal.push($(this.find)(“select”).val());
});
$(this).parent().sibles(“div.multiselect.selectlist div.input-group”).find(“select”).find(“option”).removeAttr(“disabled”).show().filter(函数(){
var a=$(this.parent(“select”).val();
返回($.inArray(this.value,selVal)>-1)和&(this.value!=a));
}).attr(“禁用”、“禁用”).hide();
};代码>
Update:我感觉到var checkRepeat
可能出现故障。Update:我感觉到var checkRepeat
可能出现故障。