必填字段验证无效

时间:2012-11-10 11:58:04

标签: c# asp.net

这是我的aspx页面代码:

<asp:TextBox runat="server" id="txtName" />

<asp:RequiredFieldValidator runat="server" id="reqName"
     controltovalidate="txtName" 
     errormessage="Please enter your name!" />

它不起作用。当我点击确定按钮然后显示错误时,我没有收到错误消息。

2 个答案:

答案 0 :(得分:1)

假设您正在使用jquery,您可以使用blur事件,如下所示:

<asp:TextBox runat="server" id="txtName" />
<asp:RequiredFieldValidator runat="server" id="reqName"
     controltovalidate="txtName" 
     errormessage="Please enter your name!" />

<script type="text/javascript">
    $('#<%= txtName.ClientID %>').blur(function () {
        var control = document.getElementById('<%= reqName.ClientID %>');
        ValidatorEnable(control);
        ValidatorValidate(control);
        ValidatorUpdateIsValid();
    });
</script>

答案 1 :(得分:0)

你没有共享很多代码,但很可能你可以做一件事让事情发生。

<asp:TextBox runat="server" ID="txtName" />
<asp:RequiredFieldValidator runat="server" ID="reqName" 
         ControlToValidate="txtName"
         ErrorMessage="Please enter your name!" 
         ValidationGroup="save" />
<asp:Button runat="server" ID="button" 
         Text="Click me" 
         ValidationGroup="save" />

ValidationGroupRequiredFieldValidator提供Button(也可能是其他回发导致ImageButton等控件。

<强>更新

如果您想在TAB上验证,请执行此操作

<asp:TextBox runat="server" ID="txtName" />
<asp:RequiredFieldValidator runat="server" ID="reqName" 
         ControlToValidate="txtName"
         ErrorMessage="Please enter your name!" 
         ValidationGroup="save" />
<asp:Button runat="server" ID="button" 
         Text="Click me" 
         ValidationGroup="save" />
<script type="text/javascript">
    function fireValid() {
        if (Page_ClientValidate('save')) // save is your validation group here
        {
            //Your valid
        }
    }
</script>