【问题标题】:Asp.NET. How to validate <asp:TextBox> control on a client side before submitting to server?ASP.NET。如何在提交到服务器之前在客户端验证 <asp:TextBox> 控件?
【发布时间】:2014-04-09 19:41:09
【问题描述】:

我的 asp.net 页面上有以下代码:

<table>
<tr>    
<td>
    <asp:DropDownList ID="ddlRegions" runat="server"></asp:DropDownList> 
</td>
<td>
    <label>Enter Iso:</label>
    <asp:TextBox ID="txtIso" runat="server" ></asp:TextBox>
    <asp:HiddenField ID="hfIso" runat="server" />
</td>
<td>
    <asp:CheckBox ID="chkActiveEmail" runat="server" Text="Email On/Off"/>
</td>
<td><asp:Button ID="btnAddActivation" Text="Add New Validation" OnCommand="AddNewActivation" runat="server"/></td>
</tr>     
</table>

当我的btnAddActivation 按钮单击时,我需要验证我的textbox txtIso,然后我需要继续执行代码隐藏>

通过简单的 html 表单,我可以使用 onsubmit = return Function()。我现在该怎么办?

谢谢

【问题讨论】:

    标签: asp.net validation client-side server-side


    【解决方案1】:

    自定义 javascript

    如果您想使用自定义 javascript,您可以使用 onclientclick:

     onclientclick="YourJSFunction()"
    

    服务器端代码会在你返回 true 时执行。

    <asp:Button ID="btnAddActivation" Text="Add New Validation" onclientclick="YouJSFunction()" OnCommand="AddNewActivation" runat="server"/>
    

    查看这里了解更多信息:

    http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.button.onclientclick(v=vs.110).aspx

    还有内置的验证控件可用于正则表达式和必填字段,即

    RegularExpressionValidator

    <asp:RegularExpressionValidator ControlToValidate="txtIso" runat="server"  ValidationExpression="String" />
    

    http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.regularexpressionvalidator(v=vs.110).aspx

    RequiredFieldValidator

     <asp:RequiredFieldValidator id="RequiredFieldValidator1"  
          ControlToValidate="txtIso"
          Text="Required Field!" 
          runat="server"/>
    

    http://msdn.microsoft.com/en-us/library/5hbw267h(v=vs.85).aspx

    【讨论】:

      【解决方案2】:

      查看validation controls。 默认情况下,他们启用了客户端验证,因此您无需编写 js 代码。

      例如:

      <asp:TextBox ID="txtIso" runat="server"></asp:TextBox>
      <asp:RequiredFieldValidator ID="txtIsoValidator" ControlToValidate="txtIso" ErrorMessage="Please enter a value." Text="*" runat="server"/>
      

      【讨论】:

        猜你喜欢
        • 2014-02-16
        • 2014-08-27
        • 1970-01-01
        • 1970-01-01
        • 2017-01-26
        • 1970-01-01
        • 2011-03-25
        • 2023-04-08
        • 2013-01-10
        相关资源
        最近更新 更多