asp.net 如果表单无效,则 MVC 禁用提交按钮
asp.net mvc disable submit button if form is invalid
如果表单存在验证错误,用户只有在表单有效时才能单击它,有没有办法禁用/提交表单提交按钮。我正在使用 MVC 4 和 razor 的"远程"属性验证 ASP.Net 不显眼的验证。
感谢和最诚挚的问候
取决于您在哪里进行验证。 如果你在服务器端使用 jquery 执行此操作,你可以添加 e.preventDefault 来检查它是否无效,并且在满足条件之前不会触发按钮单击。 如果您使用属性进行服务器端验证,则可以检查模型状态,例如
if (ModelState.IsValid){
}else{
}
如果模型状态有效(数据通过所有检查),则运行一组代码。 如果模型状态无效,则只需返回视图即可返回到开始的位置,并向用户传递包含任何失败的消息。 希望这有所帮助。
更新:
刚刚看到您评论的编辑。 对于 ajax 调用,您需要使用 prevent default。
$('.SubmitButton').on('click', function(e){
$.ajax({
//your call
success: function(result){
if(result.false){
e.preventDefault();
alert(result.message);
}
}
});
});
因此,如果调用成功,提交调用将通过。 如果为 false,则 jquery 将停止按钮单击,然后您可以显示消息或执行其他操作。
相关文章:
- MVC在通过javascript提交时会丢失值
- Begin正在使用MVC 5重新提交整个页面
- 如何在Razor MVC 5.2.3 Ajax中使用多个提交按钮
- 表单未使用 MVC 提交任何值 Asp.Net
- ASP MVC复选框表单提交问题
- 使用Html.BeginFrom在ASP.Net MVC中提交一个带有锚(<a>)标记且具有一定值的表单
- 使用一个按钮ASP.NET MVC提交多个单选按钮值
- 在带有Partial视图的MVC 5中,将提交按钮移动到表单外部
- jquery禁用表单提交时输入MVC 4
- asp.net mvc 服务器是否可以查看在父级执行提交时动态创建的控件
- 提交表单而不刷新(SPRING MVC 3)
- 客户表单提交日期时间,MVC应用程序
- ASP.NET MVC 提交按钮单击不触发
- 在表单提交后,无法使用 mvc razor 中的 ajax 从其中的另一个分部视图刷新分部视图
- Jquery 序列化 :尝试在不提交表单的情况下将表单状态传递给 ASP.NET MVC 控制器
- 未使用 MVC 4.5 不显眼的验证提交实时数据
- MVC 4提交前休息文本字段
- 表单上的MVC提交打开JQuery对话框,等待用户响应
- MVC:提交文本框更改
- Spring MVC -提交表单时丢失子实体id