阻止客户端验证转到服务器端

本文关键字:服务器端 验证 客户端 | 更新日期: 2023-09-27 18:24:52

我有一个表单,并用JavaScript进行验证。如果表单无效,如何防止提交按钮转到服务器端?

<button id="LoginButton" onclick="Login.initReuiredValidation();"
        onserverclick="LoginButton_Click" runat="server" type="submit" 
        class="submit btn btn-primary pull-right"> 
    <asp:Literal runat="server" meta:resourcekey="LoginButton" />                                    
    <i class="icon-angle-right"></i>                    
</button>

阻止客户端验证转到服务器端

在jquery中,您可以作为

 $(yourform).submit(function(event){
event.preventDefault();
//do somehting 
})

这不是经典的asp,它是asp.net网络表单,我已经相应地编辑了标签

在网络表单中添加输入验证非常容易,您可以为每个表单控件分配一个验证控件,例如

Contact Name<br />
        <asp:TextBox ID="Contact_name"  runat="server" Width="246 pt"></asp:TextBox>
        <asp:RequiredFieldValidator ID="ContactNameValidator" runat="server" 
            ErrorMessage="Please enter your name" ControlToValidate="Contact_name"></asp:RequiredFieldValidator><br />
        <br />
Contact Telephone<br />
        <asp:TextBox ID="Contact_phone" runat="server" Width="246pt"></asp:TextBox>
        <asp:RequiredFieldValidator ID="ContactPhoneValidator" runat="server" ControlToValidate="Contact_phone"
            ErrorMessage="Please enter your telephone number"></asp:RequiredFieldValidator>

如果您查看输出,您将看到验证实际上是用(客户端)JavaScript完成的。Asp.net为您生成,您不必自己编写。

此处提供更多信息https://msdn.microsoft.com/library/a0z2h4sw%28v=vs.100%29.aspx

在代码后面添加。。。

LoginButton.Attributes.Add("onclick", "return false;");