我正在尝试使用远程 ajax 调用和 initSelection 函数将条目预加载到 Select2 中。我的问题似乎类似于this question ,但是这两个答案都不适合我。
调用有效并以 json 格式返回正确的结果,问题似乎在于回调没有以正确的格式发送数据对象。
j("#selectElement").select2({
placeholder: "Placeholder text",
multiple: false,
minimumInputLength: 1,
ajax: {
url: "/getfiles",
dataType: 'json',
data: function (term, page) {
return {
q: term //search term
};
},
results: function (data, page) {
return data;
}
},
initSelection: function(element, callback) {
return j.getJSON("/getfiles?id=" + (element.val()), null, function(data) {
if (j.isFunction(callback)) {
//alert(JSON.stringify(data, null, 4));
return callback(data);
}
});
}
});
当我提醒数据对象时,它会返回以下数据:
{
"results": [
{
"id": "1",
"text": "Name of the file"
}
],
"more": "false"
最终结果是文本“undefined”被加载到 select2 输入中。
如有任何帮助,我将不胜感激。
蒂姆
最佳答案
关于javascript - 使用 initSelection ajax 调用选择 2 显示未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24462460/