나는 JQuery와 및 Ajax를 사용하는 경우 duplciate 제출을 막을 수있는 최선의 방법이 무엇인지 궁금?중복 Ajax 제출을 중단 하시겠습니까?
나는 두 가지 방법을 마련하지만, 요청이 완료 될 때까지이 아약스에서 [
-
2 만
경우 확실하지 않은 모든 버튼을 비활성화 시작합니다. 내가 이걸로 볼 2 문제 jquery 모델 대화 상자를 사용하는 그래서 나는 그들이 얼마나 쉽게 그 버튼을 비활성화하는 것이 몰라 모르겠다. 두 번째로 요청이 중단되면 사용자는 모든 버튼을 사용할 수 없기 때문에 다시 시도 할 방법이 없습니다.
내가 AjaxQueue라는 이름을 찾고 있는데, 필요한 경우 플러그인이 유지 관리를 위해 사이트를 방문한 이후로 어떻게 작동하는지 아무런 단서가 없습니다.
http://docs.jquery.com/AjaxQueue
나는 이것이 내가보고 있었는지의 오프 스핀 생각 편집.
http://www.protofunc.com/scripts/jquery/ajaxManager/
나는이 ajaxManager으로 볼 수있는 유일한 문제
내가 자신의 유형에 내 모든 $ .post, $ 갔지 및 $ 아약스 사람들을 변경해야 할 생각입니다.하지만 $ 아약스에서 특별한 매개 변수를 필요로하는 경우 어떻게됩니까? 또는 사실 .post 및 .get을 사용하는 것이 좋습니다.
편집 2
나는 그것이 모든 $ 아약스 옵션에 걸릴 수 있다고 생각합니다. 나는 아직도 그것을 조사하고있다. 그러나 지금 내가 확신 할 수없는 것은 같은 옵션을 사용할 모든 요청에 동일한 생성자를 사용할 수 있는가하는 것입니다.
First you have to construct/configure a new Ajaxmanager
//create an ajaxmanager named someAjaxProfileName
var someManagedAjax = $.manageAjax.create('someAjaxProfileName', {
queue: true,
cacheResponse: true
});
아니면 매번 위의 사항을 확인해야합니까? 응답이있을 때
'timeout' 속성을 사용하면 더 쉬울까요? 아니면 내가 생각하는대로 작동하지 않습니까? :) –
@Vivin - 좋은 지적. 'setTimeout()'에서 중단을 결정하기 위해 사용하고자하는 다른 논리가 없다면'timeout' 속성을 사용할 수 있습니다. 'request' 변수는 답안과 같은 플래그이지만 필요한 경우'abort()'기능을 제공한다는 이점이 있습니다. – user113716