使用验证器时,按钮单击时不会触发回发

时间:2011-03-22 08:25:44

标签: .net asp.net postback

单击“LookupButton”时未触发Server Click事件。奇怪的是,这段代码适用于我们的Dev服务器,但不适用于QA。如果我从Lookup Button ValidationGroup属性中删除“LookupValidationGroup”,页面会回发,但是我的验证器不起作用。我可以在服务器端明确地进行验证,但不要认为我应该这样做。

没有显示任何错误。我还使用aspnet_regiis -i命令重新安装了.net 3.5。

感谢您提供的任何帮助或提示......

 <table>
<tr>
    <td><label for="CRCIDTextBox">CRC ID</label> </td>
    <td><asp:TextBox ID="CRCIDTextBox" runat="server" MaxLength="50" CssClass="RegisterInputTextBox" Columns="10"></asp:TextBox></td>
    <td>
        <asp:RequiredFieldValidator ID="CRCIDRequired" runat="server" ControlToValidate="CRCIDTextBox" EnableClientScript="true"
            Display="Dynamic" ErrorMessage="CRC ID is required." ToolTip="CRC ID is required." ValidationGroup="LookupValidationGroup" 
            CssClass="ValidationError" SetFocusOnError="true">
        </asp:RequiredFieldValidator>
        <asp:RegularExpressionValidator ID="CRCIDRegularExpressionValidator" runat="server" ControlToValidate="CRCIDTextBox" EnableClientScript="true"
        Display="Dynamic" ErrorMessage="CRC ID format is invalid. Please enter only numbers." ValidationExpression="^\d+$" ValidationGroup="LookupValidationGroup" 
        CssClass="ValidationError" SetFocusOnError="true">
    </asp:RegularExpressionValidator>        
    </td>
</tr>
<tr>
    <td><label for="ZipTextBox">Zip Code</label></td>
    <td><asp:TextBox ID="ZipTextBox" runat="server" MaxLength="50" CssClass="RegisterInputTextBox" Columns="10"></asp:TextBox></td>
    <td>
        <asp:RequiredFieldValidator ID="ZipRequired" runat="server" ControlToValidate="ZipTextBox" EnableClientScript="true"
            Display="Dynamic" ErrorMessage="Zip Code is required." ToolTip="Zip Code is required." ValidationGroup="LookupValidationGroup" 
            CssClass="ValidationError" SetFocusOnError="true">      
        </asp:RequiredFieldValidator>        
    </td>
</tr>
<tr>
    <td>&nbsp;</td>
    <td><asp:Button ID="LookupButton" runat="server" Text="Lookup" OnClick="LookupButton_OnClick" ValidationGroup="LookupValidationGroup" UseSubmitBehavior="true" /></td>
    <td><asp:LinkButton ID="NoSiteIDLinkButton" runat="server" OnClick="NoSiteIDLinkButton_OnClick" CausesValidation="false">Do not have a CRC ID?</asp:LinkButton></td>        
</tr>

2 个答案:

答案 0 :(得分:0)

是否会触发客户端脚本,从而阻止将帖子发回服务器。我注意到你看到的验证器上有EnableClientScript =“true”。

答案 1 :(得分:0)

我看到你的ID =“LookupButton”按钮没有CausesValidation =“false”。

你可能会发现ID =“NoSiteIDLinkBut​​ton”按钮确实有效,因为它有这个参数