Неверная работа скрипта проверки поля

  • Автор темы realmadrid
  • Дата начала
R

realmadrid

Здравствуйте!
У меня идёт проверка по регулярному выражению содержимого поля (только русские буквы):
Код:
<script language="JavaScript">
function check()
{
var element=document.getElementById('fio').value;
var pred=document.getElementById('pred');
var pattern = /[^а-яА-ЯёЁ\-\s]/;
if (element!='')
{
if (pattern.test(element))
{
pred.innerHTML="NO!";
} else {pred.innerHTML="";}
} else {pred.innerHTML="";}
}
</script>

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="form1">
<input type="text" name="fio" id="fio" size="50" onKeyPress="check();"><div id="pred"></div>
</form>
Скрипт работает неверно - выдаёт ошибку только после того, как неверный символ введён дважды, да и вообще ведёт себя неадекватно. Помогите, сам не вижу ошибки.
 
A

Andrew Stephanoff

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

Обучение наступательной кибербезопасности в игровой форме. Начать игру!