<select id="dropList" multiple="multiple">
<option value="Carbon">Carbon</option>
<option value="Stainless">Stainless</option>
<option value="Alloy">Alloy</option>
</select>
我在多种选择模式下使用Select2。我想使用jquery来显示标签框中的一个,两个或全部3个选项。经过一整个上午搜索关于这个主题的所有帖子后,我所取得的最好成绩是使用以下内容一次显示一个选项!
$('#dropList').val("Stainless").trigger('change.select2');
但如果用户已经选择了说“碳”,我希望能够显示“说”,“不锈钢”等。旁边的碳排放&#39;在标签框中。我不希望碳被替换。任何帮助非常感谢。
答案 0 :(得分:1)
你仍然可以使用数组的val()(它适用于select2 multiple)
$('#dropList').val(["Stainless","Carbon"]).trigger('change.select2');
查看here中的示例(它设置初始值,然后为选择添加一个额外的值)
//Initializing a value (previous selection)
$("#dropList").select2();
$('#dropList').val("Carbon").trigger('change.select2');
//Get current value (is an array ['Carbon'])
var selection=($('#dropList').val());
//Add Stainless to selection (if not exists)
if (selection.indexOf("Stainless")==-1){
selection.push("Stainless");
}
//set the array values
$('#dropList').val(selection).trigger('change.select2');