所以我有这样的代码
<select style="width: 300px" id="vendor" name="vendor" multiple="multiple">
</select>
<input type="checkbox" id="checkbox" >Select All
就像这样的jquery
$("#vendor").select2();
var ceked = new Option("ALL", "id");
ceked.selected = true;
$("#checkbox").click(function(){
if($("#checkbox").is(':checked') ){
$("#vendor").append(ceked);
$("#vendor").trigger("change");
$("#vendor").prop('disabled', true);
}else{
$('#select2-vendor-container').empty();
$("#vendor").prop('disabled', false);
}
});
对我来说有点工作,但我的问题是当我尝试取消选中时,标签"ALL"
仍在显示。我尝试将$('#select2-vendor-container').empty();
更改为$('#vendor').val();
,但仍无效。如何删除新标签"ALL"
??
答案 0 :(得分:2)
您可以清除此代码选择的所有内容,
$("#vendor").empty().trigger("change");
并删除值为id
的选项并显示文字ALL
,您可以使用以下代码,
$("#vendor option[value='id']").remove();