【问题标题】:jQuery Validation plugin and ASP.NET validators Web FormsjQuery 验证插件和 ASP.NET 验证器 Web 窗体
【发布时间】:2009-01-29 02:57:35
【问题描述】:

我真的很想在我的 ASP.NET Web 窗体应用程序(不是 MVC)中使用 jQuery Validation plugin

我重视 jQuery 验证以获得更丰富的 UI 体验,我可以为最终用户提供一些要求,我需要使用红色边框 (css) 突出显示无效字段。

我重视 asp.net 验证器,因为它们不仅在客户端而且在服务器上运行验证,因此我不会向任何聪明到可以在其浏览器中关闭 javascript 的用户打开各种安全漏洞。

所以我正在寻找一种很好的干净方式来集成这两种技术。

我能想到的最好的办法是将所有 ASP.NET 验证器设置为 enableclientscript=false 并在 jQuery 中的客户端和服务器上作为 asp.net 验证器重复验证规则,但我已经看到了一些挑战这种方法。

最后,我发现使用 asp.net 验证器和 jquery 实现高亮显示的最低摩擦方法不是使用 jQuery Validation 插件,而是使用下面的简单 jquery 行(注意,确切的语法将根据具体情况而有所不同您如何布局表单):

<script type='text/javascript'>


        $("input[@type=submit]").click(function() {
        $('span.validationerror:hidden').parent().parent().find('input').removeClass('inputError');
        $('span.validationerror:visible').parent().parent().find('input').addClass('inputError');                        

        });

</script>

【问题讨论】:

    标签: asp.net jquery


    【解决方案1】:

    您可以毫无问题地使用 asp.net 和 jquery 验证器...即使在同一个控件上...您只需为控件设置 CssClass 以便 jquery 可以找到它...然后添加 @ 987654321@ 到您的submit button(s)

    确保包含常用的 jquery 库和 jquery.validate.js,当然还有添加文档就绪功能等。

    【讨论】:

      【解决方案2】:

      【讨论】:

      【解决方案3】:

      如果您对验证很认真,我会研究像 Peter Blum 的验证器 (http://www.peterblum.com/Home.aspx) 之类的东西,因为它们应该能够做任何您想做的事情,甚至更多。他们不使用 JQuery,但请记住 JQuery 的全部意义在于节省开发人员的时间 - 如果整体效果相同,最终用户不会知道或关心您是否使用 JQuery。

      【讨论】:

        猜你喜欢
        • 2010-10-11
        • 2017-06-16
        • 1970-01-01
        • 1970-01-01
        • 2012-09-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-08-13
        相关资源
        最近更新 更多