问题描述
我在使用 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 (将#修改为@)