Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在文本框中输入值之前出现确认密码消息_C#_Asp.net - Fatal编程技术网

C# 在文本框中输入值之前出现确认密码消息

C# 在文本框中输入值之前出现确认密码消息,c#,asp.net,C#,Asp.net,我在asp.net c#应用程序的aspx页面中编写了以下代码 <section> <label> <asp:Label ID="lblPassword" runat="server" Text="Password *"></asp:Label></label> <label class="input"> <asp:TextBox ID="tx

我在asp.net c#应用程序的aspx页面中编写了以下代码

<section>
      <label>
         <asp:Label ID="lblPassword" runat="server" Text="Password *"></asp:Label></label>
      <label class="input">

                <asp:TextBox ID="txtPassword" TextMode="Password" runat="server" data-content="Please Enter Your Password?" data-rel="popover" data-original-title="Password"></asp:TextBox>
                <asp:RequiredFieldValidator ID="rfvPassword" runat="server" Display="Dynamic" CssClass="state-error" ValidationGroup="profile" SetFocusOnError="true"
                    ControlToValidate="txtPassword">please enter password</asp:RequiredFieldValidator>
            </label>
        </section>

        <section>
            <label>
                <asp:Label ID="lblConfirmPassword" runat="server" Text="Confirm Password *"></asp:Label></label>
            <label class="input">

                <asp:TextBox ID="txtConfrimPassword" TextMode="Password" runat="server" data-content="Please Confirm Your Password?" data-rel="popover" data-original-title="Confrim Password"></asp:TextBox>
                <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" Display="Dynamic" ValidationGroup="profile" SetFocusOnError="true"
                    CssClass="state-error" ControlToValidate="txtConfrimPassword">Please re-enter your password</asp:RequiredFieldValidator>
                <asp:CompareValidator runat="server" ID="valComPassword" CssClass="state-error" ControlToValidate="txtPassword" ControlToCompare="txtConfrimPassword"
                    Display="Dynamic" ValidationGroup="profile" SetFocusOnError="true" ErrorMessage="Confirm password does not match"></asp:CompareValidator>
            </label>
        </section>

请输入密码
请重新输入您的密码

现在的问题是,当用户在
txtPassword
文本框中键入密码时,验证(确认密码)将显示在
txtConfirmPassword
文本框下方。我希望在用户在
txtcomfirm
textbox中输入错误的密码后出现此消息。

当您将属性
ControlToCompare
设置为
txtcomfirmpassword
并开始键入
txtcompassword
文本框时,此验证失败,因为您在
txtcompassword
文本框中键入确认密码文本框为空

因此,您可以简单地验证密码文本框而不是确认文本框

<asp:CompareValidator runat="server" ID="valComPassword"  CssClass="state-error"  
    ControlToValidate="txtConfrimPassword" ControlToCompare="txtPassword" 
    Display="Dynamic" ValidationGroup="profile" SetFocusOnError="true" 
    ErrorMessage="Confirm password does not match">
</asp:CompareValidator>


这不会抛出错误消息,直到您开始键入
txtConfrimPassword
textbox,这很好。

刚刚整理好您的代码,请尝试以下操作:

<section>
    <asp:Label ID="lblPassword" runat="server" Text="Password *"></asp:Label>
    <asp:TextBox ID="txtPassword" TextMode="Password" runat="server" data-content="Please Enter Your Password?" data-rel="popover" data-original-title="Password"></asp:TextBox>
    <asp:RequiredFieldValidator ID="rfvPassword" runat="server" Display="Dynamic" CssClass="state-error" ValidationGroup="profile" SetFocusOnError="true" ControlToValidate="txtPassword">please enter password</asp:RequiredFieldValidator>
</section>

<section>
    <asp:Label ID="lblConfirmPassword" runat="server" Text="Confirm Password *"></asp:Label>
    <asp:TextBox ID="txtConfrimPassword" TextMode="Password" runat="server" data-content="Please Confirm Your Password?" data-rel="popover" data-original-title="Confrim Password"></asp:TextBox>
    <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" Display="Dynamic" ValidationGroup="profile" SetFocusOnError="true" CssClass="state-error" ControlToValidate="txtConfrimPassword">Please re-enter your password</asp:RequiredFieldValidator>
    <asp:CompareValidator runat="server" ID="valComPassword" CssClass="state-error" ControlToValidate="txtPassword" ControlToCompare="txtConfrimPassword" Display="Dynamic" ValidationGroup="profile" SetFocusOnError="true" ErrorMessage="Confirm password does not match"></asp:CompareValidator>
</section>

请输入密码
请重新输入您的密码

我注意到,许多网站都会根据文本更改进行验证,所以当您开始键入“确认”时,会显示“无效”,直到匹配为止。。。我不认为这是一个问题。为什么你有嵌套的标签?!?!?!