Javascript 单击SelectAllOption multiselect时未触发onChange事件
我使用了引导multiselect,根据所选选项获取数据。触发onChange时,此筛选器数据将起作用,但在尝试选择所有onChange不起作用时: 函数getoptions节点,isFilter{ var isChanged=false; 返回{ enableCaseInsensitiveFiltering:isFilter, includeAlloption:true, filterPlaceholder:“搜索…”, 非选定文本:节点, 显示的数字:1, 按钮宽度:“100%”, 最大高度:400, onChange:函数{ 警惕“变化”; isChanged=true; }, onDropdownHide:函数事件{ 如果我被换了{ filterDatanode; isChanged=false; } } } } $'myselect'。multiselectgetOptions'myselect',true; 选择1 选择2 选择3 选择4 备选案文5 备选案文6Javascript 单击SelectAllOption multiselect时未触发onChange事件,javascript,jquery,bootstrap-multiselect,Javascript,Jquery,Bootstrap Multiselect,我使用了引导multiselect,根据所选选项获取数据。触发onChange时,此筛选器数据将起作用,但在尝试选择所有onChange不起作用时: 函数getoptions节点,isFilter{ var isChanged=false; 返回{ enableCaseInsensitiveFiltering:isFilter, includeAlloption:true, filterPlaceholder:“搜索…”, 非选定文本:节点, 显示的数字:1, 按钮宽度:“100%”, 最大高
引导multiselect提供一个名为onSelectAll的函数。此功能将用于全选选项。您需要将onSelectAll函数与onChange函数一起使用
function getOptions(node, isFilter) {
var isChanged = false;
return {
enableCaseInsensitiveFiltering: isFilter,
includeSelectAllOption: true,
filterPlaceholder: 'Search ...',
nonSelectedText: node,
numberDisplayed: 1,
buttonWidth: '100%',
maxHeight: 400,
onChange: function () {
isChanged = true;
},
onSelectAll: function() {
isChanged = true;
},
onDropdownHide: function (event) {
if (isChanged) {
filterData(node);
isChanged = false;
}
}
}
}
$('#DDLCity').multiselect(getOptions('City', true));
Bootstrap multiselect为此提供了一个事件,即onSelectAll。选中“全选”时,需要使用onSelectAll。下面是您的代码中缺少的一段代码:
onSelectAll: function() {
alert("SELECT ALL");
isChanged = true;
},
下面是代码的更新工作版本:
函数getoptions节点,isFilter{
var isChanged=false;
返回{
enableCaseInsensitiveFiltering:isFilter,
includeAlloption:true,
filterPlaceholder:“搜索…”,
非选定文本:节点,
显示的数字:1,
按钮宽度:“100%”,
最大高度:400,
onChange:函数{
警惕“变化”;
isChanged=true;
},
onSelectAll:函数{
警报选择全部;
isChanged=true;
},
onDropdownHide:functionevent{
如果我被换了{
filterDatanode;
isChanged=false;
}
}
}
}
$'myselect'。multiselectgetOptions'myselect',true;
选择1
选择2
选择3
选择4
备选案文5
备选案文6
很抱歉,现在还不清楚你在问什么,代码的作用是什么,你看到的是什么。请查看和.@T.J.Crowder onChange,即使在使用“全选”选项时未触发,如果您使用可运行的堆栈片段更新您的问题,[]工具栏按钮演示问题,可能会帮助您获得答案。您可以从类似CDN的CDN中添加外部资源引导。然后我们也需要为取消选择添加事件?使用以下代码取消引导multiselect的选择功能。onSelectAll:functione{ife{isChanged=true;}else{isChanged=false;}