jQuery : Проверка пароля на прочность
Этот фрагмент кода с использованием регулярных выражений для проверки пароля на надежность. В примере также используются классы для раскраски предупреждения.
Этот фрагмент кода с использованием регулярных выражений для проверки пароля на надежность. В примере также используются классы для раскраски предупреждения.
Разметка выглядит так:
<input type="password" name="pass" id="pass" /><span id="passstrength"></span>
Сам фрагмент:
$('#pass').keyup(function(e) { var strongRegex = new RegExp("^(?=.{8,})(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*\\W).*$", "g"); var mediumRegex = new RegExp("^(?=.{7,})(((?=.*[A-Z])(?=.*[a-z]))|((?=.*[A-Z])(?=.*[0-9]))|((?=.*[a-z])(?=.*[0-9]))).*$", "g"); var enoughRegex = new RegExp("(?=.{6,}).*", "g"); if (false == enoughRegex.test($(this).val())) { $('#passstrength').html('Больше символов'); } else if (strongRegex.test($(this).val())) { $('#passstrength').removeClass().addClass('ok'); $('#passstrength').html('Сильный!'); } else if (mediumRegex.test($(this).val())) { $('#passstrength').removeClass().addClass('alert'); $('#passstrength').html('Средний!'); } else { $('#passstrength').removeClass().addClass('error'); $('#passstrength').html('Слабый!'); } return true; });