我有一个使用内置客户端验证的 MVC 表单,通过将注释放在模型类上并根据默认 MVC 标准添加不显眼的验证 Javascript。但是我的要求是,我希望在弹出窗口中显示我的消息,而不是表单顶部的验证摘要。
在这种情况下,我使用的弹出窗口是引导模式,因为这个项目是基于引导设计的。
那么如何在提交表单时覆盖 onvalidate 方法以触发我的弹出窗口显示并获得正确的消息以在弹出窗口中?
我有一个使用内置客户端验证的 MVC 表单,通过将注释放在模型类上并根据默认 MVC 标准添加不显眼的验证 Javascript。但是我的要求是,我希望在弹出窗口中显示我的消息,而不是表单顶部的验证摘要。
在这种情况下,我使用的弹出窗口是引导模式,因为这个项目是基于引导设计的。
那么如何在提交表单时覆盖 onvalidate 方法以触发我的弹出窗口显示并获得正确的消息以在弹出窗口中?
我能找到的最佳解决方案是破解 jquery 验证插件,因为无论如何 MVC 都在使用它。我说hack,因为插件没有公开添加事件处理程序的方法,并且重新实例化验证不是一种选择。所以我在找到事件名称后手动添加了绑定。这是示例:
$("#form1").bind('invalid-form.validate',
function(form, validator) {
var errors = "";
for(var i = 0; i < validator.errorList.length; i++){
errors += validator.errorList[i].message+" ";
}
if (errors != "")alert(errors);
}
);
在我的情况下,我没有调用 Javascript 警报,而是将代码放在那里调用我的弹出窗口。