如何解决Selectize.js - 加载后设置选定的值
我在使用 selectize.js 时遇到问题。
我有一个使用 ajax 加载的 Modal,在加载 modal 期间还加载了一个 selectize,并使用另一个 ajax 调用填充它。
这是我的代码:
//MOSTRA MODAL MODIFICA SLOT
body.on('click','.editSlot',function(e) {
e.preventDefault();
id = $(this).data('id');
$.ajax({
url: "Slot/"+id+"/edit",method: 'GET',data: {
id: id,},success: function(result) {
$('#modalContent').html(result);
let select = $('#edit_slot_model_code').selectize({
valueField: 'model_code',labelField: 'model_code',searchField: ['model_code','model_name'],create: false,preload: true,placeholder: 'Seleziona il codice modello',render: {
option: function(item,escape) {
return '<div class="my-2 container rounded p-2"' +
'<span>' + escape(item.model_name) + '</span><br>' +
'<b>Cod.Mod.: </b><span>' + escape(item.model_code) + '</span><br>' +
'<b>Pay-Out: </b><span>' + escape(item.pay_out) + '%</span> ' +
'<b>Ciclo: </b><span>' + new Intl.NumberFormat('it-IT').format(escape(item.cycle)) +
'</span>' +
'</div>';
}
}
});
var selectize = select[0].selectize;
selectize.load(function (callback) {
$.ajax({
url: 'SlotsSelectModel/'+ id,type: 'GET',error: function (e) {
callback();
},success: function (res) {
callback(res.slotModels);
selectize.addOption(res.modelCode);
selectize.setValue(res.modelCode,false);
$('#Modal').show()
}
});
});
}
});
});
好吧,现在我用
selectize.addOption(res.modelCode);
selectize.setValue(res.modelCode,false);
设置json给定的值:
{"slotModels":[{"id":1,"constructor":"ABBATE SYstem DI ABBATE FRANCESCO","model_name":"CASINO' GOOD LUCK ULTIMATE","model_code":"776870592765183","pay_out":75,"cycle":30000},....]"modelCode":"776870592765183"}
JSON 由一个对象“slotModels”组成,其中包含填充选择选项的所有项目,然后一起发送“modelCode”,这是要设置为选定的值。
该值是在输入中设置的,但如果我打开选择我看不到与该值相关的选项:
我尝试了很多解决方案,但似乎没有任何帮助。
问题可能是 json 用数千条记录(现在是 6009 条)填充 select,如果我打开下拉菜单,我看不到所有记录。
有人可以解释我如何达到我想要的结果吗?
谢谢
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。