gpt4 book ai didi

jQuery UI 自动完成 JSON 给出错误 : Uncaught TypeError: Cannot use 'in' operator to search for '62' in

转载 作者:行者123 更新时间:2023-12-03 22:29:17 24 4
gpt4 key购买 nike

我在让自动完成功能在我的页面上运行时遇到了很大的麻烦。当我在搜索输入中输入 2 个字符(“OW”)时,我会得到预加载器图像(见下文),但它永远不会消失,而且我永远不会收到自动完成弹出窗口。查看 Chrome 中的控制台显示:

Uncaught TypeError: Cannot use 'in' operator to search for '62' in [{"value":103,"label":"FLOWER"},{"value":105,"label":"YELLOW"}] 

这是返回的实际字符串(通过在成功 block 中添加警报(数据)进行确认):

[{"kwrdID":103,"kwrdKeyWord":"FLOWER"},{"kwrdID":105,"kwrdKeyWord":"YELLOW"}]

这是自动完成的主要代码

$("#searchInput").autocomplete({
source: function (request, response) {
$.ajax({
url: '@Url.Action("GetKeywords", "Home")',
dataType: "json",
data: {
SearchTerm: request.term
},
success: function (data) {
response($.map(data.keywords, function (item) {
return {
label: item.kwrdKeyWord,
value: item.kwrdID
}
}));
}
});
},
minLength: 2
});

最后,这是预加载器(以防万一它相关)。

$(document).ajaxStart(function () {
var position = $('#divParent').position();
position.left += (($('#divParent').width() / 2) - ($('#preloader').width() / 2));
position.top += (($('#divParent').height() / 2) - ($('#preloader').height() / 2));
$('#preloader').css(position).show();
$('#preloader').show();
}).ajaxStop(function () {
$('#preloader').hide();
});

谁能帮忙解释一下这是怎么回事吗?

最佳答案

这是一条漫长的道路,但经过几个小时的实验,我想出了这段代码:

$("#searchInput").autocomplete({
source: function (request, response) {
$.ajax({
url: '@Url.Action("GetKeywords", "Home")',
dataType: "json",
data: {
SearchTerm: request.term
},
success: function (data) {
var parsed = JSON.parse(data);
var newArray = new Array(parsed.length);
var i = 0;

parsed.forEach(function (entry) {
var newObject = {
label: entry.kwrdKeyWord
};
newArray[i] = newObject;
i++;
});

response(newArray);
},
error: function (message) {
response([]);
}
});
},
minLength: 2
});

这看起来工作正常。事实上,我的关键字是独一无二的,所以即使没有 ID,我也能生活。

关于jQuery UI 自动完成 JSON 给出错误 : Uncaught TypeError: Cannot use 'in' operator to search for '62' in,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14966487/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com