gpt4 book ai didi

jquery - 当 ajax 请求正在进行时,如何禁止点击链接?

转载 作者:行者123 更新时间:2023-12-01 05:11:26 24 4
gpt4 key购买 nike

我有一个作为按钮的“a”元素。它没有 href 属性。

我使用 jQuery 来实现非常简单的事情:单击时启动 ajax 请求并阻止进一步的单击。 ajax完成后,启用点击。我不使用表单或输入按钮。

var contact= {
send: function() {
$.ajax({
type: "POST",
url: "ws/ContactService.asmx/SendEmail",
data: '{"fromEmail":"' + $("#email").val() + '", "fromName":"' + $('#name').val() + '", "subject":"' + $('#subject').val() + '", "message":"' + $('#message').val() + '"}',
contentType: "application/json; charset=utf-8",
dataType: "json",

error: function() {

alert("Error");

},
success: function(msg) {
alert(msg.d);
},
complete: function() {
$("#send").text("Send");

}
});
}
};
$(document).ready(function() {
$("#send").("click", function() {
$("#send").text("Sending...");
contact.send();
});
}
);

这工作得很好,除了我可以根据需要多次单击“发送”,并且每次单击都会产生新的 ajax 请求。如何在 ajax 请求正在进行时防止点击“a”元素?

最佳答案

你可以使用这样的东西:

var contact = {
inprogress: false,
send: function() {
if (contact.inprogress)
return;

contact.inprogress = true;
$.ajax({
...
complete: function() {
$("#send").text("Send");
contact.inprogress = false;
}
});
}
};

关于jquery - 当 ajax 请求正在进行时,如何禁止点击链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/454880/

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