我试图根据条件清除onChange事件中选择的值。它是否已存在于选定列表中。
但是我无法使用
清除价值
来自onChange对象的$select[name][0].selectize.clear();
。我尝试了它的各种版本,比如使用元素id。
请帮帮我。
$select[name].selectize({
valueField: 'lot_name',
labelField: 'lot_name',
create: true,
options: res,
render: {
option: function (item, escape) {
return '<div>' +
'<span><strong>' + item.lot_name + '</strong></span>' +
'</div>';
},
option_create: function (data, escape) {
return '<div class="create">Map to <strong>' + escape(data.input) + '</strong>…</div>';
}
},
onChange: function (value) {
if($.inArray(value, selectedList) > -1){
alert("Lot " + value + " has already been selected. Please recheck your selection and try again");
$select[name][0].selectize.clear();
} else {
// else logic
}
}
});
答案 0 :(得分:5)
这是我找到的解决方案。
/* Using the Below inside onChange event handler
var obj = $(this);
obj[0].setValue("");
*/
onChange: function (value) {
var obj = $(this);
if (($.inArray(value, selectedList) > -1)) {
alert("Lot " + value + " has already been selected. Please recheck your selection and try again");
obj[0].setValue("");
} else {
}
},