【发布时间】:2014-03-21 04:27:17
【问题描述】:
我有一个表单提交按钮,该按钮开始禁用并在满足条件时启用(表单完成)。为了防止重复提交,我使用了一个简单的“onclick disable button”。它按预期禁用按钮,但表单不会发布操作。什么都没有发生。任何人都可以看到我的错误或更正表格以使其正确提交吗?
<form method="post" action="log.php" >
...
<INPUT TYPE="submit" name="submit" VALUE="LOG" onClick="this.disabled=true" title="Log the Comment" disabled>
【问题讨论】:
-
您放入事件处理程序的代码在浏览器为该对象内置代码之前触发。因此,您在浏览器提交表单之前将按钮设置为禁用。您可以通过使用常规按钮并有条件地在事件处理程序中手动提交表单来解决此问题。
-
这样做
onSubmit而不是onClick -
感谢您的热情回复!你们都正确地识别了问题;但是,所提出的解决方案似乎都不起作用。提交 php 需要时间让用户双击。我似乎无法阻止提交发生两次。
-
添加了另一个答案,@user3283304。它比简单的自定义事件处理程序更复杂一些,但也更优雅一些。
标签: javascript php forms button post