【发布时间】:2015-09-28 16:23:10
【问题描述】:
我正在使用带有多个选项的 select2 和通过按钮进行选择的编程访问。它工作正常,但是当我点击按钮时,所有以前选择的值都被删除,只有点击按钮的值被选中。由于我使用的是多项选择,因此添加单击的值并保留先前选择的值而不删除它们是有意义的...除了“更改”之外是否还有另一个事件要触发,它不会删除值而是添加它们?
<select id="id_entities" class="js-example-programmatic" style="width:100%" multiple="multiple">
</select>
<td><button id="prefix_{{teu.entity_id}}" class="js-programmatic-set-val" value="{{teu.entity_id}}" name="{{teu.entity}}"><i class="fa fa-plus"></i></button></td>
<td>{{teu.entity}}</td>
<td>{{teu.user}}</td>
<script >
$(".js-example-programmatic").select2({
minimumInputLength: 2,
placeholder: "Select entities...",
allowClear: true,
multiple:true,
delay: 250,
tags:false,
ajax: {
url: '/entities/search/autocomplete/',
dataType: 'json',
data: function (parms, page) { return { title: parms.term }; },
},
});
</script>
<script>
var $example = $('#id_entities');
$("button[id^='prefix_']").click(function(){
value = $(this).attr('value');
value_name = $(this).attr('name')
if ($('#id_entities option[value="'+value+'"]').length > 0) {
}
else {
$("#id_entities").append('<option value="'+value+'">'+value_name+'</option>');
}
$example.val(value).trigger("change");
});
</script>
【问题讨论】:
-
如果您包含 HTML 和少量 JS,以便我们更好地了解您所拥有的环境,这将是有用的。
-
添加了 html 和 javascript.. 我使用这个 jquery 来选择框 select2.github.io
-
更进一步,创建它@jsfiddle.net
标签: javascript jquery select jquery-select2