将选项应用于特定的选定元素

时间:2015-02-07 21:51:46

标签: jquery jquery-chosen

我尝试为特定的chosen-select元素应用这两个选项: display_selected_options: false, display_disabled_options: false,但它似乎无法运作。

这就是我尝试过的:$('#chosenElement').chosen({ display_selected_options: false, display_disabled_options: false });

但这确实有效,但会应用于所有选定的元素:$('.chosen-select').chosen({ display_selected_options: false, display_disabled_options: false });

我错过了什么?

编辑:渲染html

    <select class="chosen-select" data-container="body" data-placement="top"
     data-toggle="tooltip" id="chosenElement" multiple="multiple" 
name="chosenElement" title=""><option value="2">FFFF</option>
        <option value="3">AAAAA</option>
        <option value="1">BBBBB</option>
        <option value="6">CCCCC</option>
        <option value="5">DDDDD</option>
        <option value="4">EEEE</option>
        </select>

2 个答案:

答案 0 :(得分:1)

通过id设置所选元素的选项可以正常工作。只需确保以后不重置选项(使用类选择器)。

$('#chosenElement').chosen({ display_selected_options: true, display_disabled_options: false });

这是demo

答案 1 :(得分:0)

由于你知道select的id,你可以使用以下内容:

$(".chosen-select").each(function() { // Loop through all selects with the class 'chosen-select'.
    var options = {}; // Set options to an empty object initially
    var id = $(this).attr("id");
    if(id && id == "chosenElement") { // Check if the select id is the one you want. If so, set the properties below.
        options.display_selected_options = false;
        options.display_disabled_options = false;
    }
    $(this).chosen(options); // Finally call chosen on the select, passing in options as an argument.
});