Alteste |
| Автор блога: | Alteste |
![]() |
Все рубрики (1) |
![]() |
Модули (1) |
|
+19
Alteste → 4 марта 2010
|
|
Сейчас я расскажу вам как сделать в поле "пароль" проверку на раскладку клавиатуры пользователя. Пример мы все можем видеть на яндексе при входе в почту с главной страницы - при вводе пароля кириллицей выскакивает красная подсказка "смените раскладку".
Оригинальный скрипт я взял прямо с яндекса и считаю его очень полезным, тем более при его небольшом размере. Сам скрипт выглядит следующим образом: Код PHP: Его нужно вставить на страницу template.php вашего шаблона. Вообще всем советую не засорять лист такими вот вкраплениями мелких скриптов, а создать один файл, скажем myscript.js и писать туда все свои скрипты, а подключить одной строкой <script type="text/javascript" src="/путь_к_папке/myscript.js"></script>
<script type="text/javascript">
function checkPass(value){
if (value.match(/[а-яА-Я]/) != null){
document.getElementById('mail-err').style.display='block'; }
else {
document.getElementById('mail-err').style.display='none'; } }
</script>
Далее нужно изменить шаблон модуля mod_auth.tpl, который находится в папке /templates/_default_/modules/ следующим образом: в поле input где прописан id="password" вставить событие onkeyup="checkPass(this.value)" а после закрытия тега input вставить следующий див: Код PHP: В конечном итоге должны получить следующее:<div id="mail-err" style="display: none;" align="center">смените раскладку</div> Код PHP: Последним штрихом будет добавление стиля для этого блока в файл .css вашего шаблона
<td valign="top"><input name="pass" type="password" id="pass" onkeyup="checkPass(this.value)" size="15" />
<div id="mail-err" style="display: none;" align="center">смените раскладку</div></td>
Код PHP: После сохранения все должно работать: при вводе пароля кириллицей сразу выскакивает красная надпись "смените раскладку"
#mail-err{
position:relative;
padding:3px 0;
color:#f00
}
![]() Можете скачать все файлы в этом архиве
7 комментариев
|

