我有4个多选项,这是通过这种方式动态创建的
var drp_nt = $('<select />', {
'id' : 'drp_' + nt,
'name' : 'drp_' + nt+'[]',
'multiple': true});
var drp_cnt = $('<select />', {
'id' : 'drp_' + cnt,
'name' : 'drp_' + cnt+'[]',
'multiple': true});
var drp_ctg = $('<select />', {
'id' : 'drp_' + ctg,
'name' : 'drp_' + ctg+'[]',
'multiple': true});
var drp_api = $('<select />', {
'id' : 'drp_' + api,
'name' : 'drp_' + api+'[]',
'multiple': true});
现在我想创建一个名为
的函数function check_selection()
{
-----------------
-----------------
}
将包含用于检查所有多选项是否都选择了任何数据的代码。
此外,如何通过使用来自所有4个多选下拉列表的事件来调用此函数(因为只要从任何多选中选择任何选项,就会触发此函数)
我为multiselect尝试了onchange事件,但它没有调用该函数。
答案 0 :(得分:1)
使用change event
选中是否使用过滤器()
$("select").change(function () {
var selectedBox = $("select").filter(function () {
return this.value != "";
});
if (selectedBox.length == 4) {
alert("4 ckecked")
}
});
对于动态元素
$(document).on("change", "select[id^=drp_]", function(){
var selectedBox = $("select").filter(function () {
return this.value != "";
});
if (selectedBox.length == 4) {
alert("4 ckecked")
}
});
<强> DEMO 强>