12

ブートストラップの複数選択リスト ボックスを使用しています。ユーザーが複数選択でオプションを選択すると、正しく表示されます。ただし、以前に選択したオプションをリセットするオプションがあります。ユーザーがリセット ボタンをクリックすると、自動的style=display:noneにドロップダウン ボタンに追加され、ドロップダウン リストが非表示になります。

これは私のコードです

$("#button").click(function () {

    $('option', $('.multiselect')).each(function (element) {
        $(this).removeAttr('selected').prop('selected', false);

    });
    $('.multiselect').multiselect('refresh');
});
4

6 に答える 6

55

その他の便利なオプションは次のとおりです。

  1. $('Id').multiselect('refresh');- 選択の選択されたオプションに基づいて複数選択を更新します。

  2. $('Id').multiselect('destroy');- プラグイン全体のバインドを解除します。

  3. buildFilter:フィルターを構築します。

  4. buildSelectAll : select all をビルドします。select all が既に作成されているかどうかを確認します。

  5. $('Id').multiselect('select', ['1', '2', '4']);- 指定された値のすべてのオプションを選択します。

  6. clearSelection: 選択したすべての項目をクリアします。

  7. $('Id').multiselect('deselect', ['1', '2', '4']);- 指定された値のすべてのオプションを選択解除します。

  8. $('Id').multiselect('selectAll', true);- すべての有効で表示可能なオプションを選択します。

  9. $('Id').multiselect('deselectAll', true);- すべてのオプションの選択を解除します。

  10. $('Id').multiselect('rebuild');- プラグインを再構築します。

  11. $('Id').multiselect('enable'); - 複数選択を有効にします。

  12. $('Id').multiselect('disable');- 複数選択を無効にします。

  13. hasSelectAll: すべて選択チェックボックスが存在するかどうかを確認します。

  14. updateSelectAll: 現在表示され、選択されているチェックボックスに基づいて、すべて選択チェックボックスを更新します。

  15. $('Id').multiselect('updateButtonText');- 現在選択されているオプションに基づいて、ボタンのテキストとそのタイトルを更新します。

  16. getSelected(): 選択したすべてのオプションを取得します。

  17. getOptionByValue(): 選択オプションをその値で取得します。

  18. $('Id').multiselect('dataprovider', options);- 提供されたデータは、ドロップダウンの作成に使用されます。

詳細については、bootstrap-multiselectを参照してください

于 2015-07-24T09:37:03.917 に答える
6

このようにクラスをターゲットにするだけでは、Bootstrap Multiselect は失敗します。

$(".multiselect").multiselect("refresh");

これは、プラグインにクラス「multiselect」を持つ何かがあるために発生します。ターゲットにしたいのは選択したものだけであることを知らせる必要があります。

以下は私のために働いた。

$("select.multiselect").multiselect("refresh");

「選択解除」メソッドについても同じことが言えます。

$("select.multiselect").multiselect("deselectAll", false);
于 2015-03-27T11:16:20.277 に答える
5

私のアプローチは、複数選択を破棄してから再初期化することです。それは私のために働いた。試してみる:

    function initMultiSelect(){

      $('#yourMultiselectId').multiselect({
        includeSelectAllOption: true,
        selectAllValue: 'select-all-value'
      });
    }


    $('#button').click(function(e){
        e.preventDefault();
        $('#yourMultiselectId').multiselect('destroy');
        initMultiSelect();
    });
于 2016-08-01T16:25:46.157 に答える
2

このドキュメントを見てください: http://davidstutz.github.io/bootstrap-multiselect/

オプションの選択を解除するには、これを使用します

$('.multiselect').multiselect('deselect', value)

次に、更新メソッドを呼び出します

$('.multiselect').multiselect('refresh');
于 2014-09-09T17:20:21.210 に答える