2013-04-21 3 views
0

Я пытаюсь обернуть голову вокруг RegExp. В настоящее время у меня есть форма, где я хочу проверить, что ввод пользователя - это только буквы (хотя пример письма, числа и пробелов был бы полезен). Я хочу, чтобы эта проверка была проверена с помощью кнопки отправки. Может ли кто-нибудь помочь мне с моим синтаксисом/логикой? Также, пожалуйста, объясните свой ответ, чтобы я мог попытаться это понять. Я также хотел бы сохранить его только в JavaScript, если это возможно, любая помощь в этом вопросе будет принята с благодарностью!Проверка Javascript для ввода пользователем (regExp)

здесь код моей формы в:

First name: <input type="text" name="firstName" /><br /> 
<span id="firstNameWarnings" style="color:black"> </span> 

<button type="submit" onclick="return validateRegistrationForm()" >Register</button> 

Примечание: Мой JavaScript выполняет все функции с помощью мастер-функции. (Отправить вызов функции мастер.) вот мой текущий код JavaScript:

 function validateFirstName() 
     { 
      var k=document.forms["registration"]["firstName"].value; 
      var vld=new RegExp([A-Za-z]); 

      if(k != vld) 
      { 
       document.getElementById("firstNameWarnings").style.color = "#F00"; 
       document.getElementById("firstNameWarnings").innerHTML = "First name onyl take letters!"; 
       return false; 
      } 
      else 
      { 
       document.getElementById("firstNameWarnings").innerHTML = ""; 
       return true; 
      } 
     } 
+0

Обратите внимание, что у некоторых людей есть место или дефис или апостроф от их имени, например, Dac kien или Ann-Marie или La'tanya. Лично я считаю, что (на английском) использование апострофов, подобных этому, является смехотворной аффектией со стороны родителей, но все же бедные дети не могут это сделать, и они должны иметь возможность вводить свое предпочтительное правописание с апострофом в вашей системы. (Я предполагаю, что вы уже разрешаете дефисы и апострофы в полях имени фамилии, таких как Смайт-Гамильтон и О'Коннер?) – nnnnnn

ответ

0

Вы можете использовать эту функцию для проверки - if (/^[a-zA-Z]+$/.test(k)).

^ - соответствует в начале строки.

[a-zA-Z] - любой символ из диапазона.

+ - один или несколько раз.

$ - соответствует в конце строки.

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