對於下面的代碼:如何在javascript中將ajax調用延遲到服務器?
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
<script>
$(document).ready(function() {
var delay = (function() {
var timer = 0;
return function(callback, ms) {
clearTimeout(timer);
timer = setTimeout(callback, ms);
};
})();
$("div#main").on("keyup", "input[name=code]", function() {
delay($.getJSON("/some-url/", function(data) {
console.log("here");
}), 2000);
});
});
</script>
<div id="main">
<input name="code" />
</div>
有誰知道爲什麼我得到了JavaScript錯誤
Uncaught SyntaxError: Unexpected identifier
我試圖拖延數據發送KEYUP到服務器。
2秒。 – Archer 2012-08-15 16:31:13
@Archer我不認爲你是正確的......在'delay'中,'clearTimeout'調用後面跟着'setTimeout'會使計時器從'keyup'重置兩秒鐘。隨意嘗試在小提琴:) – 2012-08-15 16:32:05
我看到 - 這不是他的代碼替換代碼。他只需要用你所做的一切來取代它的一部分。對不起,那還不清楚。 – Archer 2012-08-15 16:34:13