jQuery("#" + msgSubject).autocomplete({
source: function (request, response) {
jQuery.ajax({
url: inboxControl.systemParams.allTemplateData + '/' + request.term + inboxControl.systemParams.API_EXTENSION,
dataType: "json",
async: false,
contentType: 'application/json; charset=utf-8',
error: function (jq, status, message) {
//alert('A jQuery error has occurred. Status: ' + status + ' - Message: ' + message);
},
success: function (data) {
if (data.results) {
response(data.results.templates);
} else {
response("");
}
}
});
},
minLength: 1
});
这是我的代码,如果输入的文本没有结果,我想禁用 ajax 调用,在这种情况下,我想搜索单词“India”,如果我键入“I”,它将进行 ajax 调用并搜索对于带有“I”的单词,假设结果为空,但如果我再次键入“n”作为第二个字母,它将使用“In”进行 ajax 调用,如果没有响应,我想停止第二次 ajax 调用第一个请求
最佳答案
您可以添加一个标志,然后根据所述标志的值有条件地发出 ajax 请求:
var has_match = true;
jQuery("#" + msgSubject).autocomplete({
source: function (request, response) {
if(has_match) {
jQuery.ajax({
url: inboxControl.systemParams.allTemplateData + '/' + request.term + inboxControl.systemParams.API_EXTENSION,
dataType: "json",
async: false,
contentType: 'application/json; charset=utf-8',
error: function (jq, status, message) {
//alert('A jQuery error has occurred. Status: ' + status + ' - Message: ' + message);
},
success: function (data) {
if (data.results) {
response(data.results.templates);
} else {
has_match = false;
}
}
});
}
},
minLength: 1
});
关于javascript - 如果没有结果,如何禁用 jquery ajax- 自动完成?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20512217/