0
나는 현재 그 안에 몇 가지 텍스트를 입력 한 후 텍스트 상자의 결과를 표시하는 간단한 AJAX 호출 응용 프로그램을 짓고 있어요
:중복 된 AJAX 호출을 방지하는 방법은 무엇입니까?
var delay = (function(){
var timer = 0;
return function(callback, ms){
clearTimeout (timer);
timer = setTimeout(callback, ms);
};
})();
$(document).ready(function(e) {
$("input[name=html]").keyup(function(e) {
if(this.value.length > 1) {
e.preventDefault();
var form = $(this).closest('form');
var form_data = form.serialize();
var form_url = form.attr("action");
var form_method = form.attr("method").toUpperCase();
delay(function(){
$("#loadingimg").show();
$.ajax({
url: form_url,
type: form_method,
data: form_data,
cache: false,
success: function(returnhtml){
$("#result").html(returnhtml);
$("#loadingimg").hide();
}
});
},1000);
}
});
});
을 위의 데모에서 볼 수 있듯이을, 예를 들어 테스트, 테스트 1 또는 테스트 2을 입력하거나 길이가 1보다 길면 AJAX 호출을합니다.
제 질문은 저에게 AJAX 중복 호출을 방지 할 수있는 방법이 있습니까? 예를 들어 입력란에 테스트을 다시 입력하면 div30에 테스트가 표시되고 결과를 다시 가져 오기 위해 다른 AJAX를 호출하지 않습니다. 대단히 감사드립니다.
맛있는 스파게티. – Vix