代码之家  ›  专栏  ›  技术社区  ›  Michael Kniskern

确定页面在javascript-asp.net中是否有效

  •  75
  • Michael Kniskern  · 技术社区  · 15 年前

    确定ASPX页面上的表单在JavaScript中是否有效的最佳方法是什么?

    我正在尝试检查使用javascript打开的用户控件的验证 window.showModalDialog() 并且检查服务器端的“page.isvalid”属性不起作用。我正在使用ASP.NET验证控件进行页验证。

    6 回复  |  直到 11 年前
        1
  •  163
  •   aherrick    15 年前

    如果我有一个页面正在使用一组ASP.NET验证控件,我将使用类似以下代码来验证该页面。在输入提交时进行调用。希望这个代码示例可以帮助您开始!

        <input type="submit" value="Submit" onclick"ValidatePage();" />
    
        <script type="text/javascript">
    
        function ValidatePage() {
    
            if (typeof (Page_ClientValidate) == 'function') {
                Page_ClientValidate();
            }
    
            if (Page_IsValid) {
                // do something
                alert('Page is valid!');                
            }
            else {
                // do something else
                alert('Page is not valid!');
            }
        }
    
    </script>
    
        2
  •  9
  •   Andrea    15 年前

    你在检查 Page.IsValid 你应该去哪里检查 Page_IsValid (它是.NET验证器公开的变量):)

        3
  •  6
  •   joshb    15 年前

    ASP.NET验证控件公开可用于JavaScript的客户端API: http://msdn.microsoft.com/en-us/library/aa479045.aspx

    您应该能够检查page的isvalid对象,以查看是否有任何验证控件无效。

        4
  •  3
  •   Littm JessicaParker    12 年前
    $("input[id$=Button2]").click(function () {
        var validated = Page_ClientValidate('repo');
        if (validated) {
            // JavaScript code.
        }
    });
    
        5
  •  1
  •   Community pid    7 年前

    您可以使用jquery和 Validation 用于执行客户端验证的插件。这将同时适用于HTML标记和ASP.NET服务器控件。 Phil Haack has a good sample project 这将向您展示基础知识。

    这个 SO question 对这种方法也有深入的回顾。

        6
  •  0
  •   Biby Augustine    11 年前

    集合 ValidationGroup 每个的属性 asp.net 验证程序控件在您的页面中,您必须提供相同的名称 验证组 在一页中。

    例如:

    <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ErrorMessage="Required" ValidationGroup="Validate"></asp:RequiredFieldValidator>
        <asp:RangeValidator ID="RangeValidator1" runat="server" ErrorMessage="RangeValidator" ValidationGroup="Validate"></asp:RangeValidator>
        <asp:CustomValidator ID="CustomValidator1" runat="server" ErrorMessage="CustomValidator" ValidationGroup="Validate"></asp:CustomValidator>
    

    之后在你的javascript调用中 Page_ClientValidate("ValidationGroup")

    例如:

    function ValidatePage(){
    if(Page_ClientValidate("Validate")){ //validate using above validation controls group
          //validation return true section
    }
    else{
          //validation return false section
    }
    }