使用 json 填充 Select2
Populate Select2 with json
我的函数是:
jQuery.post("example.php",{}, function(data){$("#select2").html('').select2({data: data});});
和returnjson:
{"results":[{"id":"aasd23423d3d","text":"dfasie"},{"id":"asdf2fsdf","text":"velder"}"}]}
但是select2是把字母和单词分开填写的,如图
Image Select2
jQuery.post 的最后一个参数是 dataType
。尝试将其设置为 'json'
,数据将在内部为您解析为 object。
目前看来 jQuery 假设它只是来自服务器的文本
如果您控制 php 代码,您还应该为 application/json
设置内容类型 header
jQuery.post("example.php",
{},
function(data) {
$("#select2").html('').select2({
data: data
});
},
'json'
);
尝试:
<select id="select2"></select>
$('#select2').select2({
ajax: {
type: 'POST',
url: 'example.php',
data: {},
dataType: 'json'
processResults: function (data) {
return {
results: data.results
};
}
}
});
要了解更多信息,请访问 Select2 with Ajax
我的函数是:
jQuery.post("example.php",{}, function(data){$("#select2").html('').select2({data: data});});
和returnjson:
{"results":[{"id":"aasd23423d3d","text":"dfasie"},{"id":"asdf2fsdf","text":"velder"}"}]}
但是select2是把字母和单词分开填写的,如图
Image Select2
jQuery.post 的最后一个参数是 dataType
。尝试将其设置为 'json'
,数据将在内部为您解析为 object。
目前看来 jQuery 假设它只是来自服务器的文本
如果您控制 php 代码,您还应该为 application/json
设置内容类型 headerjQuery.post("example.php",
{},
function(data) {
$("#select2").html('').select2({
data: data
});
},
'json'
);
尝试:
<select id="select2"></select>
$('#select2').select2({
ajax: {
type: 'POST',
url: 'example.php',
data: {},
dataType: 'json'
processResults: function (data) {
return {
results: data.results
};
}
}
});
要了解更多信息,请访问 Select2 with Ajax