добавить опцию «показать пароль» для контроля входа в asp.net - PullRequest
4 голосов
/ 14 августа 2011

Я использовал контроль входа asp.net в ored для входа на сайт, проблема в том, что я хочу добавить опцию для отображения пароля (вместо звездочки), но у меня нет доступа к текстовому полю пароля, поэтому я не могу изменить его текстовый режим.

Любая идея?

Ответы [ 3 ]

4 голосов
/ 14 августа 2011

LayoutTemplate доступно в элементе управления входом, вы можете полностью изменить макет и все, что вы хотите. Вот полный макет, разработанный для страницы входа, которую я использовал в одном проекте.

 <asp:Login ID="Login1" runat="server">
    <LayoutTemplate>
        <table>
            <tr>
                <td align="right">
                    <asp:Label ID="UserNameLabel" runat="server" AssociatedControlID="UserName">User Name:</asp:Label>
                </td>
                <td>
                    <asp:TextBox ID="UserName" runat="server"></asp:TextBox>
                    <asp:RequiredFieldValidator ID="UserNameRequired" runat="server" ControlToValidate="UserName"
                        ErrorMessage="User Name is required." ToolTip="User Name is required." ValidationGroup="Login1">*</asp:RequiredFieldValidator>
                </td>
            </tr>
            <tr>
                <td align="right">
                    <asp:Label ID="PasswordLabel" runat="server" AssociatedControlID="Password">Password:</asp:Label>
                </td>
                <td>
                    <asp:TextBox ID="Password" runat="server" ></asp:TextBox>
                    <asp:RequiredFieldValidator ID="PasswordRequired" runat="server" ControlToValidate="Password"
                        ErrorMessage="Password is required." ToolTip="Password is required." ValidationGroup="Login1">*</asp:RequiredFieldValidator>
                </td>
            </tr>
            <tr>
                <td align="right">
                    &nbsp;
                </td>
                <td>
                    <asp:CheckBox ID="RememberMe" runat="server" CssClass="hint hide" Text="Remember me next time." />
                </td>
            </tr>
            <tr>
                <td align="center" colspan="2" style="color: Red;">
                    <asp:Literal ID="FailureText" runat="server" EnableViewState="False"></asp:Literal>
                </td>
            </tr>
            <tr>
                <td align="right" colspan="2">
                    <asp:Button ID="LoginButton" runat="server" CommandName="Login" Text="Log In" ValidationGroup="Login1" />
                </td>
            </tr>
        </table>
    </LayoutTemplate>
</asp:Login>
3 голосов
/ 06 января 2016

Show password option by using Checkbox

onchange="document.getElementById('password').type = this.checked ? 'text' : 'password'"

Даже мы можем использовать событие onclick флажка. Код ссылки

0 голосов
/ 08 марта 2019

То, как я сделал свой контроль паролей для показа / скрытия, включало ответы Мухаммеда Ахтара и Кешаварапу Венкатеша. Я использовал элемент управления ASP.NET Login, как Мухаммед, но также использовал флажок с очень похожим кодом, таким как Kesavarapu. Разница между моим флажком и его состояла в том, что идентификатор, который получает JavaScript, - это "<% = ((TextBox) logUsers.FindControl (" Password ")). ClientID%>" вместо "password", так как мы получаем доступ к Управление входом в ASP.NET вместо обычного текстового поля.

<asp:Login ID="logUsers" runat="server" BackColor="#F7F7DE" BorderColor="#CCCC99" BorderStyle="Solid" BorderWidth="1px" FailureText="" Font-Names="Verdana" Font-Size="10pt" OnAuthenticate="logUsers_Authenticate" UserNameRequiredErrorMessage="Username is required.">
    <TitleTextStyle BackColor="#6B696B" Font-Bold="True" ForeColor="White" />
</asp:Login>
<input type="checkbox" onchange="document.getElementById('<%=((TextBox)logUsers.FindControl("Password")).ClientID %>').type = this.checked ? 'text' : 'password'" /> Show password
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...