我的页面上有2个按钮,我只想在btnSubmit点击上验证。但是我不想验证用户是否点击了btnSave按钮。我有几个需要验证的文本框..
<asp:TextBox ID="txt1" runat="server" CssClass="form-control"></asp:TextBox>
<asp:RequiredFieldValidator ErrorMessage="** Required **" ForeColor="Red" ControlToValidate="txt1" runat="server" Display="Dynamic" />
这是按钮保存
<asp:LinkButton ID="linkSave" runat="server" CssClass="btn btn-primary btn-block" OnClick="btn_Save_Click">
<i aria-hidden="true" class="glyphicon glyphicon-ok"></i>Save
这是按钮提交
<asp:LinkButton ID="linkSubmit" runat="server" CssClass="btn btn-primary btn-block" OnClick="btn_Submit_Click">
<i aria-hidden="true" class="glyphicon glyphicon-ok"></i>Submit
答案 0 :(得分:4)
在您不想触发验证的所有按钮上设置CauseValidation = "False"
,包括LinkButtons
<asp:LinkButton ID="linkSave" runat="server" CauseValidation="False" />
如果你想要每个按钮有不同的验证,那么使用按钮上的ValidationGroup="GroupName"
属性和参与该验证的所有控件(与该按钮相关联)
答案 1 :(得分:0)
这允许你使一个按钮强制执行验证(btnSubmit),但另一个按钮不执行(btnSave)。
答案 2 :(得分:0)
您可以使用群组验证
<asp:TextBox ID="txt1" runat="server" CssClass="form-control"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" validationgroup="validTxT1Group" ErrorMessage="** Required **" ForeColor="Red" ControlToValidate="txt1" runat="server" Display="Dynamic" />
<asp:LinkButton ID="linkSave" runat="server" CssClass="btn btn-primary btn-block" CausesValidation="false" OnClick="btn_Save_Click">
<i aria-hidden="true" class="glyphicon glyphicon-ok"></i>Save
<asp:LinkButton ID="linkSubmit" runat="server" CssClass="btn btn-primary btn-block" CausesValidation="true" ValidationGroup="validTxT1Group" OnClick="btn_Submit_Click">
<i aria-hidden="true" class="glyphicon glyphicon-ok"></i>Submit