从多选下拉列表中选择选项

时间:2016-10-21 08:13:01

标签: javascript jquery ruby-on-rails-3 bootstrap-multiselect

我正在使用rails中的select_tag和bootstrap多选功能。我能够显示选项。但是如何在页面加载时使用jquery选择选项。

选择标签代码   <%= select_tag 'test', options_from_collection_for_select(@test, "id", "name"), :class => "form-control", :multiple => "multiple" %>

$('#test').multiselect({ 
  includeSelectAllOption: true,
  enableFiltering:true         
});  

当我使用

 $("#test").val(["some_value_of_option", "some_value_of_option"]).prop("selected", true);

以上代码无法选择选项。 在此先感谢您的帮助..

3 个答案:

答案 0 :(得分:1)

为什么不在没有jQuery的情况下直接使用HTML?

<form>
  <select multiple="multiple" id="test" class="multiselect">
    <option value="one">One</option>
    <option value="two">Two</option>
    <option value="three" selected>Three</option>
    <option value="four"  selected>Four</option>
    <option value="five">Five</option>
  </select>
</form>

如果你真的需要使用jQuery,我们可以扩展Madalin的答案当然是为了更新视图:

$("#test").find('option[value="cheese"]').prop("selected", true);
$("#test").find('option[value="mozarella"]').prop("selected", true);

// Don't forget to update view
$("#test").multiselect('refresh');

答案 1 :(得分:1)

我们可以将数组形式的选定值作为options_from_collection_for_select的第三个参数传递。

如,     options_from_collection_for_select(@test,“id”,“name”,[“1”,“2”,“3”])

答案 2 :(得分:0)

使用find和属性选择器选择值为

的元素

尝试以下方法:

 $("#test").find('option[value="some_value_of_option", option[value="some_value_of_option"]').prop("selected", true);