当我尝试使用绑定到多选控件的某些方法时,我遇到了一些问题。
当页面加载时,我以这种方式将方法绑定到窗口小部件:
$('#myMultiselect').bind('multiselectcheckall',
function(event, ui){
alert('All Multiselect items selected!');
});
);
但在部分回发后,这将停止工作。 有什么想法吗?
答案 0 :(得分:-1)
您是否尝试在创建多选时使用此功能?
$("#myMultiselect").multiselect({
checkAll: function(){
alert('All Multiselect items selected!');
}
});
编辑:
好的,我知道checkAll
只有在点击“全部检查”按钮时才有效。因此,您必须在每次点击时获得已检查项目的数量,并将其与项目总数进行比较,如下所示:
var size = $(this).find('option').size(); //total items amount
var checked = $(this).multiselect('getChecked').size(); //checked items amount
将其与click
事件一起使用,并且不要忘记保留checkAll
事件,因为点击“全部检查”不会触发click
事件:)
$("#myMultiselect").multiselect({
click: function(){
var size = $(this).find('option').size(); //total items amount
var checked = $(this).multiselect('getChecked').size(); //checked items amount
if (size == checked){
alert('All Multiselect items (manually) selected!');
}
},
checkAll: function(){
alert('All Multiselect items selected!');
}
});
以下是演示:JSFiddle
希望我能帮助你!!