我有一个输入框,每次按键都有一个 ajax 请求。所以如果我输入单词“name”,将会有 4 个成功的请求。所以我实际上只想要执行的最新请求。因此,如果我输入单词“名称”,则只有一个请求将是最后一个请求。
我也有一个解决方案(这是一个简单的点击方法示例)
JS脚本
var callid = 1;
function ajaxCall (checkval ){
if(checkval == callid){
$.ajax({
type: 'post',
url: baseurl + "test/call_ajax",
data: {
val: "1"
},
success: function(data) {
console.log(data)
}
});
}
}
function call(){
var send = callid+=1;
setTimeout( function(){ ajaxCall(send) } , 500);
}
html脚本
<a href="#" onclick="call()" > Call ajax </a>
这是完美的工作。但我想如果有办法改进它一点点。
有任何想法吗 :)