5

リストから最大 5 つの追加オプションを選択するオプションをユーザーに提供したいクライアントがいます。Chosen.js のコンセプトは気に入っていますが、選択範囲を制限するにはどうすればよいですか? 解決策の 1 つは、onChange を使用して選択した数をカウントし、残りを無効にすることだと思いますが、より適切な解決策はありますか?

4

2 に答える 2

12

Chosenは、max_selected_optionsこれを実行できるようにするためのを提供します。

$(".chzn-select").chosen({ max_selected_options: 5 });
于 2013-01-11T08:47:05.583 に答える
0

私の場合、 max_selected_options: 5 は機能しません。ということで以下のように修正しました。

var countSelect = 0;
$(".chosen-select").chosen().change( function (e, params) {         
    if(params.deselected != undefined) { countSelect--; } 
    if(params.selected != undefined) { countSelect++; } 
    if(countSelect > 3) {           
        $('.chosen-select option[value="'+params.selected+'"]').attr('selected', false);
        $(this).trigger('chosen:updated');
        countSelect--;
    } 
});

それを試してみてください。その作業は非常にスムーズです。

于 2016-06-12T19:17:47.280 に答える