2014-10-26 2 views
0

У меня есть HTML-форма, и я написал скрипт JavaScript/jQuery, который проверяет, соответствует ли поле регулярному выражению. Однако происходит то, что тестер регулярных выражений не работает и соответствует любой введенной строке. Вот мой код:Тестирование соответствия регулярному выражению не работает должным образом

HTML

<input type="text" name="name" id="name" required> 
<span id="namecheck"></span> 

JS

$("#name").keyup(function() { 
    if (/^[A-Za-z \-]{0,35}/.test($(this).val())) { 
     $("#namecheck").html("<i style=\"color:green\">Match!</i>"); 
    } else { 
     $("#namecheck").html("<i style=\"color:darkred\">No match!</i>"); 
    } 
}); 

JSFiddle

Поскольку я вроде новичок в JS (начал изучать его в последнее время), Вероятно, я ошибаюсь, но любая помощь будет оценена по достоинству.

ответ

1

Возможно, вы захотите получить $ в конце вашего обычного выражения. Знак доллара указывает на то, что это конец строки, поэтому если добавить, что в своем регулярном выражении, то это будет соответствовать только строки длиной от 0 до 35:

/^[A-Za-z \-]{0,35}$/ 
+0

Ого, только один символ, но это сделал Это. Благодарю. – Snowstormer

+0

@Snowstormer Добро пожаловать! – ProgramFOX

Смежные вопросы