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

Тема в разделе "HTML, CSS, XML, JavaScript", создана пользователем realmadrid, 12 дек 2007.

  1. realmadrid

    realmadrid Гость

    Здравствуйте!
    У меня идёт проверка по регулярному выражению содержимого поля (только русские буквы):
    Код (Text):
    <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>
    Скрипт работает неверно - выдаёт ошибку только после того, как неверный символ введён дважды, да и вообще ведёт себя неадекватно. Помогите, сам не вижу ошибки.
     
  2. Andrew Stephanoff

    Andrew Stephanoff Гость

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

Поделиться этой страницей