【发布时间】:2015-11-28 12:42:05
【问题描述】:
我这里有这个表格:
<form id="register-form" action="<?=$_SERVER['PHP_SELF']?>" method="post">
<label>Name <span style='color: red'>*</span><br/>
<input type='text' name='user_name'/>
</label>
<label>Email <span style='color: red'>*</span><br/>
<input type='text' name='user_email'/>
</label>
//Another form elements
<button name='register' type='submit'>Register</button>
</form>
为了处理表单,我使用:
if(isset($_POST['register']))
{
//Process
}
我需要的是register 按钮在用户点击它时被禁用。我找到了这个解决方案:
$('#register-form').submit(function()
{
$(this).find(":submit").attr('disabled', 'disabled');
});
使用这个 jQuery 代码,当我单击它时按钮被禁用,但 PHP 不处理该表单。如何解决?
【问题讨论】:
-
它适用于我here,但我可能错过了一些东西。
-
您使用的是哪个版本的 jQuery?您可能想使用
.prop()而不是.attr() -
@JayBlanchard 即使
.prop()也不会提交表单。 -
您能在控制台的网络选项卡中看到
register没有发布吗? -
并且你的action属性调用了同一个页面,所以,脚本应该在同一个页面上执行,这意味着-页面将被重新加载。另一方面,如果你使用ajax,并且单独的php脚本->不重新加载,并且可以保存按钮状态。