密码框文本

时间:2012-08-22 01:47:05

标签: javascript asp.net html textbox login-control

我目前有一个网站登录框。我想在密码框中添加文本,告诉用户他们使用哪个密码。即。密码框将包含单词(请使用Windows登录密码),当他们点击它时,措辞将消失,并允许他们输入密码。
我可以使用登录框执行此操作:

<asp:TextBox ID="UserName" class="txtbox" runat="server" text="NUID" Width="240px"
 onfocus="if(this.value==this.defaultValue) {this.value='';$(this).css('color','black');}"  
 onblur="if(this.value=='') {this.value=this.defaultValue;$(this).css('color','rgb(173,180,195)');}"></asp:TextBox>

然而,使用密码它似乎不起作用。这似乎是因为有了textmode =&#34;密码&#34;参数。

有人知道如何在密码模式下使用ASP.NET文本框执行此操作。不是HTML textobx。

这是我目前的代码。

HTML

<asp:Login ID="Login1" class="loginbox" runat="server" Font-Names="Verdana" Font-Size="8pt" 
      DisplayRememberMe="False" UserNameLabelText="NUID:" 
      FailureText="Incorrect login. Please try again."  TitleText="" DestinationPageUrl="default.aspx" onauthenticate="Login1_Authenticate">
      <TextBoxStyle Width="110px" />
      <LoginButtonStyle Font-Names="Arial, Helvetica, sans-serif" Height="24px" />
                                        <LayoutTemplate>
                                            <table border="0" cellpadding="1" cellspacing="0" 
                                                style="border-collapse:collapse; height:113px">
                                                <tr>
                                                    <td>
                                                        <table border="0" cellpadding="0"> 
                                                            <tr>
                                                                <td valign="baseline">
                                                                <div class="textlogin">NUID</div>
                                                                </td>
                                                            </tr>                                                               
                                                            <tr>
                                                                <td>
                                                                    <asp:TextBox ID="UserName" class="textloginbox" runat="server"  Font-Bold="true"></asp:TextBox>
                                                                    <asp:RequiredFieldValidator ID="UserNameRequired" runat="server" 
                                                                        ControlToValidate="UserName" ErrorMessage="User Name is required." 
                                                                        ToolTip="User Name is required." ValidationGroup="Login1" ForeColor="#FF0000" Font-Bold="true" Font-Size="14px">*</asp:RequiredFieldValidator>
                                                                </td>
                                                            </tr>
                                                            <tr><td style="height:3px;"></td></tr>
                                                            <tr>
                                                                <td>
                                                                <div class="textlogin">Password</div>
                                                                </td>
                                                            </tr>  
                                                            <tr>
                                                                <td>

                                                                    <asp:TextBox ID="Password" runat="server" class="textloginbox" TextMode="Password" Font-Bold="true"></asp:TextBox>
                                                                    <asp:RequiredFieldValidator ID="PasswordRequired" runat="server" 
                                                                        ControlToValidate="Password" ErrorMessage="Password is required." 
                                                                        ToolTip="Password is required." ValidationGroup="Login1" ForeColor="#FF0000" Font-Bold="true" Font-Size="14px">*</asp:RequiredFieldValidator>
                                                                </td>
                                                            </tr>
                                                            <tr>
                                                                <td align="center" style="color:#DA6426;">
                                                                    <asp:Literal ID="FailureText" runat="server" EnableViewState="False"></asp:Literal>
                                                                </td>
                                                            </tr>
                                                            <tr>
                                                                <td align="right">
                                                                <asp:ImageButton ID="LoginButton" runat="server" CssClass="loginbutton" CommandName="Login" ValidationGroup="Login1"  ImageUrl="~/Icons/Enter Arrow 30.png" />
                                                                &nbsp;&nbsp;       
                                                                </td>
                                                            </tr>
                                                        </table>
                                                    </td>
                                                </tr>
                                            </table>
                                        </LayoutTemplate>
                                    <TitleTextStyle BackColor="#FFFFE0" Font-Bold="True" 
                                        ForeColor="#FFFFFF" Height="0px"/>
                                    </asp:Login>

1 个答案:

答案 0 :(得分:2)

您是否尝试过占位符属性?所以在ID =&#34;密码&#34;之后,放入占位符=&#34;在此输入测试&#34;。它不会为IE8工作而下降但是......尝试这个(使用jQuery)

$("#Password").focus(function()
{
    if($(this).val() == "Your Text Here")
    {
        $(this).val("");
    }
});

$("#Password").blur(function()
{
    if($(this).val() == "")
    {
        $(this).val("Your Text Here");
    }
});

编辑:阅读完上述评论后,他有一个观点。使用此代码将呈现&#34; Your Text Here&#34;不可读。但是,占位符属性将正确显示,即使它不适用于IE 8及以下