可能的重复:
如何防止多个表单从客户端提交?
我们有一个正在使用的项目管理工具,但是当用户在任务下提交日志时,他们几次单击"提交"按钮。这增加了相同信息的几个条目。
我已经跟踪了PHP文件中的代码,并且在线看到了许多解决方案,请单击。在过去的四到五个小时中,我一直在玩耍,但不幸的是,我无法完成任何工作。我希望有人可以提供一些帮助:
这是我在PHP文件中拥有的代码:
<input type="submit" class="button" value="<?php echo $AppUI->_('update task'); ?>" onclick="updateTask();" />
有效地,我只希望用户单击按钮,然后单击一次。它要么是灰色的,要么用户无法单击。
谢谢
只是禁用updateTask()
函数中的按钮:
document.getElementById("mysubmit").disabled = true;
这个屁股您将ID添加到您的提交按钮。
如果是AJAX提交,请确保您在提交失败时重新启用按钮。
为什么不简单地禁用updatetask()脚本中的按钮?
document.getElementByID("myButton").disabled='disabled'
如果UpdatEtask函数太通用,则您的按钮可以调用一个更具体的功能,该功能仅处理该按钮:
function myButtonClicked() {
document.getElementByID("myButton").disabled='disabled';
updateTask();
}
然后更改您的按钮以致电mybuttonClicked而不是UpdatEttask。
<input type="submit" ... onclick="myButtonClicked();" />