Bootstrap Multiselect - 检查Optgroup复选框

时间:2015-08-24 16:56:39

标签: jquery bootstrap-multiselect

我使用带有enableCollapsibleOptGroups的Bootstrap Multiselect:true,允许在单击optgroup标题复选框时切换optgroups中的所有选项。在某些情况下,我需要预先选择选项,这可能意味着选择了optgroup中的所有选项。但是,在这种情况下,我无法弄清楚如何检查optgroup标题复选框。我可以在选定的optgroup中获取所有选项,但不能选择optgroup header复选框。这会强制用户单击两次以取消选择该optgoup中的所有选项。我可以在一个隐藏字段中指出哪些选项组已选择所有选项,但我还没有能够弄清楚如何实际检查optgroup标题复选框。有什么建议? enter image description here

 $("select[id$='ddlLocation']").multiselect({
        enableCollapsibleOptGroups: true,
        includeSelectAllOption: true,
        maxHeight: 200,
        onDropdownHide: function (event) {
            $("select[id$='ddlLocation']").multiselect("updateButtonText");
            $("select[id$='ddlLocation']").multiselect("updateSelectAll");
            var arrLocations = [];
            var locations = $("#ddlLocation option:selected"); 
            $(locations).each(function(index, location){
                arrLocations.push([$(this).val()]);
            });
            if (arrLocations.length > 0) {
                $("input[id$='hdfLocationIds']").val(arrLocations);
                var prm = Sys.WebForms.PageRequestManager.getInstance();
                prm._doPostBack("btnParticipantLookup", 'getUserCnt');
            }
        }
    });
    var locationIds = $("input[id$='hdfLocationIds']").val();
    if (locationIds.length > 0)
    {
        $("select[id$='ddlLocation']").multiselect("select", locationIds.split(","));
    }

1 个答案:

答案 0 :(得分:0)

现在已经集成/修复了。您可以在此处找到相应的示例(enableClickableOptGroups选项的最后一个示例):http://davidstutz.github.io/bootstrap-multiselect/#configuration-options-enableClickableOptGroups。记得升级到最新的主分支。