Php 用户双击提交创建2篇文章
我有一个web应用程序可以让用户创建post并写入DBPhp 用户双击提交创建2篇文章,php,jquery,Php,Jquery,我有一个web应用程序可以让用户创建post并写入DB $.post('add.php',{title:post.title.value,...} 但我有一个问题,当用户双击提交按钮,它创建了2个职位。文件变成查询两次,是解决这个问题的任何方法。(我使用jquery Post发送到下一个文件并写入数据库) 您可以使用javascript在第一次单击后禁用该按钮。这样,您就不会有任何重复发布。您可以使用javascript在第一次单击后禁用该按钮。这样你就不会有任何双重职位 $('#button
$.post('add.php',{title:post.title.value,...}
但我有一个问题,当用户双击提交按钮,它创建了2个职位。文件变成查询两次,是解决这个问题的任何方法。(我使用jquery Post发送到下一个文件并写入数据库)
您可以使用javascript在第一次单击后禁用该按钮。这样,您就不会有任何重复发布。您可以使用javascript在第一次单击后禁用该按钮。这样你就不会有任何双重职位
$('#buttonId').click(function() {
$(this).attr('disabled', 'disabled');
});
快乐编码:)
快乐编码:)在单击或提交处理程序上,您可以禁用如下按钮:
$('#add_button').click(function() {
$(this).attr('disabled', true);
// Do your post stuff
$.post('add.php', {}, function(data) {
// Enable the button after the post, or on your success function
$(this).attr('disabled', false);
});
})
编辑:如上所述,您还可以在JQuery对象上使用
.prop
,而不是.attr
。在单击或提交处理程序上,您可以禁用如下按钮:
$('#add_button').click(function() {
$(this).attr('disabled', true);
// Do your post stuff
$.post('add.php', {}, function(data) {
// Enable the button after the post, or on your success function
$(this).attr('disabled', false);
});
})
编辑:如上所述,您也可以在JQuery对象上使用
.prop
,而不是.attr
。我只需单击3次,它就会创建3条帖子,这意味着。。。如果你点击4次,那么你会得到4篇帖子!?我只需点击3次,就可以创建3个帖子,这意味着。。。如果你点击4次,那么你会得到4篇帖子!?使用.prop()及其完善我尝试了这一点,但如果我非常快(多次)单击,它仍然会使用$.ajax
函数发布两次,其中包含成功和错误回调,在这些回调中,您可以再次启用按钮。下面是文档:use.prop()及其完善版我尝试了一下,但是如果我非常快(多次)单击,它仍然会使用$.ajax
函数和success
和error
回调发布两次,在这些回调中,您可以再次启用按钮。以下是文件: