【发布时间】:2015-04-11 13:13:15
【问题描述】:
我正在尝试让 select2 与外部 json 文件一起使用: json 文件如下所示(名为 data.json,位于我网站的根目录中):
{"laender":[
{
"Land" : "Ägypten",
"kurz" : "EG",
"Fahne" : "aegypten"
},
{
"Land" : "Andorra",
"kurz" : "AN",
"Fahne" : "andorra"
}
]}
Javascript 看起来像这样:
$(document).ready(function($) {
function formatValues(data) {
return data.Land + ' ' + data.Fahne;
}
$('#countrySelect').select2({
ajax: {
dataType: "json",
url: "data.json",
results: function (data) {
return {results: data};
}
},
formatResult: formatValues
});
(如此处所述:Select2 load data with Ajax from file)。 HTML 中的输出很简单
<div id="countrySelect"></div>
但我无法让它工作。我尝试了很多东西,但没有任何反应。我对 json 和 Ajax 也很陌生。
提前感谢您的帮助! 迪特马尔
【问题讨论】:
-
您在开发者控制台中看到任何错误吗?
-
Select2:AJAX 结果未在响应的
results键中返回数组。这是错误消息,但我不知道如何解决这个问题... -
你能把
console.log("AJAX data",data)作为function(data) {starts之后的第一条语句,然后把results改成success吗? -
好的,我用IE开发者工具打开了控制台。如上所述,消息“AJAX 结果没有在 Response 的 'results' 键中返回一个数组。但是当我打开 Ajax 数据 [object Object] 时,有一个名为 'laender' 的条目作为一个包含所有信息...
-
但是我要怎么继续???
标签: javascript jquery ajax json jquery-select2