我正在尝试使用JSON数组填充select2元素;但我无法得到它。
我有下一个数组:
data = [{"id":"Foo","text":"Foo"},{"id":"Bar","text":"Bar"}]
我将select2初始化如下:
$("#selectElement").select2();
我使用下一个代码填充:
$('#selectElement').select2('data', data, true);
但不起作用,我不知道为什么。有人可以帮帮我吗?
编辑:我需要在select2的init之后填充(我从AJAX接收JSON)
我的意图是使用其他select2的AJAX搜索的JSON填充我的问题的select2。
一切正常,除了填充(我在第一个格式的Selectiom方法中得到了这个JSON,但我不知道我可以用这个来填充第二个select2)
答案 0 :(得分:9)
我发现您的代码与select2
中的代码存在一些差异您的数据:
var data = [{"id":"Foo","text":"Foo"},{"id":"Bar","text":"Bar"}];
应该是:
var data = [{id:"Foo", text:"Foo"},{id:"Bar", text:"Bar"}]
您的人口代码:
$('#selectElement').select2('data', data, true);
应该是:
$('#selectElement').select2({data: data});
Select2的示例
var data = [
{ id: 0, text: 'enhancement' },
{ id: 1, text: 'bug' },
{ id: 2, text: 'duplicate' },
{ id: 3, text: 'invalid' },
{ id: 4, text: 'wontfix' }
];
$(".js-example-data-array").select2({
data: data
});
<select class="js-example-data-array"></select>
答案 1 :(得分:0)
我刚刚在select2列表中发布了一个类似的问题,然后又回到了墙上。这就是我想出的:(“破坏”是帮助的提示)。首先,我清空选择,然后重置它。
$("#id_category").on('change', function(){
var cat = $(this).val();
var url = '/breeds/lookup/?q='+cat;
$.get(url, function(d){
var idb = $("#id_breed").empty();
idb.select2({data: d});
}, "json");
});
答案 2 :(得分:0)
window.plugins.sslCertificateChecker.check(
successCallback,
errorCallback,
server,
fingerprint);
function successCallback(message) {
console.log(message);
// Message is always: CONNECTION_SECURE.
// Now do something with the trusted server.
}
function errorCallback(message) {
console.log(message);
}
答案 3 :(得分:0)
如果您尝试默认显示预加载JSON的下拉列表,那么当您单击字段时,您希望下拉并显示填充数据,而无需键入单个字母,设置:
minimumInputLength:0
并且像魅力一样。 我希望这解决了你的问题,因为它确实是我的:)