0

私はenableCollapsibleOptGroups: true でBootstrap Multiselectを使用しています。これにより、optgroup ヘッダーのチェックボックスがクリックされたときに、optgroups 内のすべてのオプションを切り替えることができます。場合によっては、オプションを事前に選択する必要があります。これは、optgroup 内のすべてのオプションが選択されていることを意味します。ただし、この場合、optgroup ヘッダーのチェックボックスをオンにする方法がわかりません。選択した optgroup 内のすべてのオプションを取得できますが、optgroup ヘッダーのチェックボックスは取得できません。これにより、ユーザーはそれを 2 回クリックして、その optgoup のすべてのオプションを選択解除する必要があります。非表示のフィールドで、どの optgroup がすべてのオプションを選択しているかを示すことができましたが、optgroup ヘッダーのチェックボックスを実際にチェックする方法がわかりませんでした。助言がありますか? ここに画像の説明を入力

 $("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(","));
    }
4

1 に答える 1

0

これは現在統合/修正されています。ここで対応する例を見つけることができます (enableClickableOptGroupsオプションの最後の例): http://davidstutz.github.io/bootstrap-multiselect/#configuration-options-enableClickableOptGroups。最新の master ブランチにアップグレードすることを忘れないでください。

于 2016-04-19T20:56:08.623 に答える