【问题标题】:Required field validator stopping image button onclick?必填字段验证器停止图像按钮 onclick?
【发布时间】:2011-06-28 15:53:52
【问题描述】:

我创建的图片按钮有问题。当我将必填字段验证器附加到页面时,它们会阻止按钮 onclick 事件触发。我对此感到非常困惑,因为我在我的代码中看不到任何问题!

请你看看这个并帮帮我吗?

干杯

<asp:TextBox ID="TB_Newsletter" runat="server" CssClass="nwsltr-input"></asp:TextBox>

        <asp:RequiredFieldValidator ID="RequiredFieldValidator1"  ValidationGroup="V1" runat="server" Display="Dynamic"  ControlToValidate="TB_Newsletter" ErrorMessage="You must enter your email address"></asp:RequiredFieldValidator>

        <asp:RegularExpressionValidator ID="RegularExpressionValidator1" 
           runat="server" ValidationGroup="V1" Display="Dynamic"
           ValidationExpression="^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$" 
           ErrorMessage="Invalid Email Address" ControlToValidate="TB_Newsletter"></asp:RegularExpressionValidator>

      <asp:ImageButton ID="IB_SubScri" 
           ImageUrl="~/_includes/images/buttons/nwsltr-btn.png" runat="server" 
           onclick="IB_SubScri_Click" CausesValidation="True" ValidationGroup="V1"/>

【问题讨论】:

  • 哪个验证器在触发?验证信息是什么?

标签: c# .net validation imagebutton


【解决方案1】:

当您按下按钮时,它会提交表单,但在此之前,字段验证器由脚本触发 - 如果验证失败,表单将不会发布。 &lt;asp:Imagebutton /&gt;&lt;asp:Button /&gt; 类型允许您在按下它们时禁用验证:

<asp:ImageButton ... CausesValidation="False"/>

来自 CausesValidation 属性上的 MSDN:

如果控件导致验证则为真 在任何控件上执行 收到时需要验证 重点;否则为假。默认 是真的。

请参阅此MSDN reference 了解更多信息。

显然,我们在这里假设验证器在按下此按钮时触发不是必需的。

【讨论】:

    【解决方案2】:

    在 ImageButton 上将“CausesValidation”更改为 False

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-04-03
      • 1970-01-01
      • 2013-03-23
      • 1970-01-01
      • 2011-11-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多