如果存在 DataAnnotation 验证错误,如何禁用表单的提交按钮?
我尝试绑定到表单中所有输入的更改事件,并检查页面上是否有任何验证消息。问题是验证似乎是在更改事件之后发生的,因此我在页面上出现错误之前进行检查。我正在寻找某种方法在客户端验证发生后运行我的脚本。
我在 VM 上使用带有 DataAnnotation 属性的 MVC 2。
I've attempted binding to the change event of all inputs in the form, and checked to see if there are any validation messages on the page. The problem is that validation seems to occur after the change event, so I am checking before the errors appear on the page. I'm looking for some way to run my script after the client-side validation takes place.
I'm using MVC 2 with DataAnnotation attributes on my VM.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是我刚刚拼凑在一起的东西,它包装了原始的
parseElement
和invalidHandler
函数,允许您添加自己的逻辑。但请注意,这是一个立即函数,而不是相当于 document.onload 的 jQuery 函数。
这是用调用原始函数的新函数替换了
$.validator.unobtrusive.parseElement
以确保应用validationInfo.options.invalidHandler
到父窗体,然后您可以使用 newhandler 函数包装该处理程序。编辑:
上面的答案仅适用于 MVC3 和不显眼的验证。
当表单无效时使用
$.validator
执行一些附加功能...Here's something I just hacked together that wraps the original
parseElement
andinvalidHandler
functions, allowing you to add your own logic.Notice, though, that this is an immediate function, not the jQuery function which is equivalent to document.onload.
This is replacing the
$.validator.unobtrusive.parseElement
with a new function that calls the original to ensure thevalidationInfo.options.invalidHandler
is applied to the parent form, which then allows you to wrap that handler with thenewhandler
function.Edit:
The above answer will only work for MVC3 and unobtrusive validation.
To perform some additional functionality with
$.validator
when the form is invalid...