我正在尝试创建标记并使用ajax来显示最常用的标记,然后我使用Select2插件来处理这种情况。到目前为止,在我的 javascript代码中调用我的JSON数据时,我被困住了:
$("#tags").select2({
ajax: {
url: "api/v1/tags/",
dataType: "json",
cache: true,
quietMillis: 150,
allowClear: true,
data: function(params) {
return {
tags: params.term
}
},
processResults: function (data) {
return {
results: $.map(data, function(obj) {
return {
id: obj.id,
text: obj.slug
};
})
};
}
},
tags: true,
placeholder: "Search or insert tags",
tokenSeparators: [',', ' '],
});
它返回此错误:
我将JSON数据保存在此目录中/api/v1/tags/a
... /api/v1/tags/z
我只是想知道如何将Select2参数中的参数url ?tags=keyword
更改为/keyword
,我在供应商文档中寻找,但我什么都没得到。谁能帮我?我需要你的建议。
答案 0 :(得分:0)
问题不在您的脚本中,而是在您尝试访问的API中。它返回404,这意味着您提供了错误的网址或资源根本就没有。
尝试将关键字值直接连接到网址字符串,如下所示,而不是使用数据参数:
$("#tags").select2({
ajax: {
url: "api/v1/tags/" + keywordValue,
dataType: "json",
cache: true,
quietMillis: 150,
allowClear: true,
processResults: function (data) {
return {
results: $.map(data, function(obj) {
return {
id: obj.id,
text: obj.slug
};
})
};
}
},
tags: true,
placeholder: "Search or insert tags",
tokenSeparators: [',', ' '],
});