Проверка на стороне клиента для значения текстового поля пароля - PullRequest
0 голосов
/ 11 ноября 2011

У меня есть веб-форма для отправки новых данных пользователя. В этом поле для пароля используется текстовое поле. Для этого требуется проверка, поскольку «она должна содержать не менее 8 символов, по крайней мере, один не буквенно-цифровой символ». Я предоставляю подтверждение для этого в файле веб-конфигурации: -

<membership defaultProvider="SQLMembershipProvider">
  <providers>
      <remove name="SQLMembershipProvider"/>
        <add name="SQLMembershipProvider" connectionStringName="DAFEConnection" minRequiredPasswordLength="8" minRequiredNonalphanumericCharacters="1"   type="System.Web.Security.SqlMembershipProvider" applicationName="WBCPDA" requiresQuestionAndAnswer="false" enablePasswordReset="true" maxInvalidPasswordAttempts="4" passwordAttemptWindow="15" requiresUniqueEmail="true"/>
            </providers>
        </membership>

Эта проверка запускается на стороне сервера, т. Е. Когда я нажимаю кнопку «Отправить». Я хочу проверить то же самое на стороне клиента, т. Е. Как только он введет нежелательное значение в текстовое поле.

PLZ help

Ответы [ 2 ]

2 голосов
/ 11 ноября 2011

Самый быстрый способ сделать это - использовать валидатор регулярных выражений.См. документацию здесь.

Предложение Кангкана очень хорошо;не только идея использовать jQuery для этого;но в основном идея использования регулярного выражения для проверки того, что пароль в ожидаемом формате.

Дополнительный ответ:

Это сложно Самый быстрый способ дать вам точныйкод, который будет работать для вашего случая, так как вы не предоставили разметку;но вы могли бы сделать что-то похожее на это:

<asp:button id="btnSubmit" runat="server" OnClientClick="return validate_pass();" OnClick="YourHandler" />

И будет использовать функцию JavaScript. Регулярный валидатор выражений.Смотри документацию здесь.

function validate_pass()
{
    //txtPassword is assumed to be the id of the password text field on your page
    var passField = document.getElementById('<%=txtPassword.ClientID%>');
    if(passField.value.length<8)
    {  
       alert('Password must contain at least 8 characters');
       return false; 
    }
    return true;
}
1 голос
/ 11 ноября 2011

Вы можете использовать плагины javascript или jQuery для проверки правил паролей на стороне клиента.Вы можете сослаться на http://plugins.jquery.com/plugin-tags/password-validation или http://bassistance.de/jquery-plugins/jquery-plugin-password-validation/.. Вы даже можете развернуть свой собственный код JavaScript и использовать RegEx для подтверждения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...