gpt4 book ai didi

javascript - 如何避免多次AJAX调用?

转载 作者:行者123 更新时间:2023-12-01 01:55:52 25 4
gpt4 key购买 nike

我正在使用以下代码通过 AJAX 提交表单:

$( 'form' ).submit(function(e) {

$.ajax({
type: 'POST',
url: ajax_url,
dataType: 'json',
data: {
'action': 'my_action',
'str': $( 'form' ).serialize()
},
success: function( data ) {
// Do something here.
},
error: function( data ) {
// Do something here.
}
});
return false;
});

背景

我的 PHP 处理程序执行各种任务,然后发回响应。然后我可以在成功或错误函数中使用 data 执行某些操作。

我的问题

当用户双击表单的提交按钮时,会发生两次 AJAX 调用,这会导致我的 PHP 处理程序内的代码执行两次。

我的问题

如果用户双击提交,如何避免我的代码被执行两次?

最佳答案

只需添加一些控制变量:

var isSubmitting = false;

$( 'form' ).submit(function(e) {
if(isSubmitting) {
return;
}
isSubmitting = true;
$.ajax({
type: 'POST',
url: ajax_url,
dataType: 'json',
data: {
'action': 'my_action',
'str': $( 'form' ).serialize()
},
success: function( data ) {
isSubmitting = false;
// Do something here.
},
error: function( data ) {
isSubmitting = false;
// Do something here.
}
});
return false;
});

关于javascript - 如何避免多次AJAX调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26768583/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com