当我浏览时,在 stackoverflow 本身中,我可以找到很多这样的问题。还在问..因为我不知道。
if ($.trim(location).length > 2) {
var randomNum = Math.floor(Math.random() * 9999999999999);
var url = "/mobile/App/GetLocations?noCache=" + randomNum + "&h="
+ location;
$('#' + smartFillBoxId).empty();
$('#' + smartFillBoxId).hide();
$.ajax({
url:url
}).done(
function (data) {
selectedLocation = htmlData = "";
var count = 0;
results = eval('(' + data + ')').results;
$('#' + smartFillBoxId).show();
$.each(eval('(' + data + ')').results, function (index, results) {
htmlData = formatLocation(results,count);
$('#' + smartFillBoxId).append(
"<li><a href='#' onclick='addSelectedValue(\""
+ elementName + "\",\""
+ count + "\",\""
+ smartFillBoxId + "\")' >"
+ htmlData
+ "</a></li>");
count++;
});
});
}
场景:
1. 有一个文本框。
2. 在文本框中,用户将输入最少 3 个字符。
3. Ajax 将使用这些字符执行
4. 智能填充框将列出附加值(作为列表)
当我在文本框中缓慢输入时工作正常。
但是当我在文本框中快速输入时,smartfill 数据会列出 2/3 次。
ajax 调用函数绑定到 'onkeyup' 事件。