在表单验证后单击时禁用提交按钮
Disable submit button on click after form validation
我有一个表单,它有一个jquery表单验证。。我需要的是在验证完成后提交表单时,提交按钮应该被禁用。。
<form action="#" method="post" id="myform" name="myform">
Location: <input name="location" type="text" />
Site: <input name="site" type="text" />
Age: <input name="age" type="text" />
Gender <input name="gender" type="text" />
<input name="button" type="submit" class="myButton" id="button" value="Submit" />
</form>
这是我的表格JsFiddle
不确定为什么要禁用提交按钮,但使用jQuery可以进行
$('input[type="submit"]').prop('disabled',true);
通常情况下,您要么没有提交按钮,要么提交表单,页面就会重新加载!
更新
要通过在评论中刷新页面来阻止人们转发值,请将用户重定向到不发布值的页面!
header('/same_page.php');
你想对form.submit执行操作。不确定是否需要在那里添加form.valid()作为检查,但我总是这样做。之后,您可以返回true或false。
- True:浏览器继续执行表单中指定的链接和操作
- False:浏览器停止(当您出现验证错误时)
这里的代码:
$('#myform').submit(function() {
if (!$('#myform').valid()) return false;
$('#myform input[type=submit]').attr("disabled", "disabled");
return true;
});
我还用那个代码更新了你的fiddle,所以你可以试用
验证表单后,使用:
$( "#button" ).click(function(event) {
if($('#myform').valid()) {
$(event.target).attr("disabled", "disabled");
}
});
如果您想在想要验证的表单有效后禁用,那么您可以禁用像下面这样的提交按钮
$("#myForm").validate({
submitHandler: function(form) {
// do other stuff for a valid form
$('#myform input[type=submit]').attr("disabled", "disabled");
form.submit();
}
});
相关文章:
- 带有验证和隐藏字段值的提交按钮
- 如何在 API 调用后和 if 语句中启用提交按钮
- 提交按钮,该按钮位于使用 Excel VBA 的 Javascript 中
- 如何使用提交按钮搜索表中的记录
- 在单击按钮前后禁用提交按钮
- 在表单完成并确认密码之前,请禁用提交按钮
- 如何使用Java脚本创建提交按钮's的拖放功能
- 如何在单击“提交”按钮时为“新建”窗口编写JavaScript,用“确定”和“取消”显示注册信息
- 提交按钮通过JQuery和JavaScript函数所做的更改不会持续
- 从输入时提交到jQuery,无需提交按钮,无需表单操作
- onclick提交按钮JSP
- 通过提交按钮传递值
- 如果ng单击附加到提交按钮,则表单未验证
- 如何在Razor MVC 5.2.3 Ajax中使用多个提交按钮
- 使用提交按钮隐藏未选中的单选按钮
- Ruby/JS如何在提交按钮后重新加载页面
- JavaScript表单提交没有't fire asp服务器端点击功能的提交按钮
- 使用javascript后,提交按钮不起作用
- 如何使用jQuery/Ajax响应特定的提交按钮
- 表单中的提交按钮在 PHP 打印中不起作用