default value for asp.net textbox -> TextMode = pa

2019-07-14 11:48发布

问题:

please see the link below :
https://www.boot-loader.com/eng
how does default password in that link work?
how can i have a default value such as "password" string for textbox below (with asterisks) :

                    <asp:TextBox ID="headertxtPassWord" runat="server" Text="password" CssClass="header-login-input" ValidationGroup="A"
                        TextMode="Password"></asp:TextBox>  

回答1:

Ok I think I did not understand you correctly.

Here you can find the answer with some background and explanation Basically the point is that MS prevents showing default password from security reasons and this should be done in code behind to avoid unveiling password to others.

Hope this will help.



回答2:

In codebehind, you can do this:

headertxtPassWord.Attributes.Add("value", "ThePassword");

Use this to set the value, instead of setting the Text property. You can still read the value from the control via the Text property.



回答3:

As far as I know this is not default feature of text box. You should set the value of your password property using javascript when document is ready and then bind to focus event to remove it when someone wants to enter their password.

When using jQuery:

<asp:TextBox ID="headertxtPassWord" runat="server" Text="password" CssClass="header-login-input" ValidationGroup="A" TextMode="Password"></asp:TextBox>
<script type="text/javascript">
    $(document).ready(function () {
        // executes on document ready
        $("#<%= headertxtPassWord.ClientID %>").val("password");
    });
    $("#<%= headertxtPassWord.ClientId %>").focus(function() {
        $("#<%= headertxtPassWord.ClientId %>").val("");
    });
</script>

Alternatively you could search for custom control with such feature.



回答4:

protected void ASPxTextBox1_PreRender(object sender, EventArgs e) {
    DevExpress.Web.ASPxEditors.ASPxTextBox edit = sender as  DevExpress.Web.ASPxEditors.ASPxTextBox ;
    edit.ClientSideEvents.Init = "function(s, e) {s.SetText('" + password.value + "');}";
}