2014-01-29 3 views
0

Я пытаюсь проверить форму, а именно прямое поле текстового поля «город». Если город пуст или меньше 3 символов, появляется предупреждение. Также не позволяя номера, чтобы показать в текстовых полях строки, и никаких строк в числовых полях (возраст) .. Я попробовал: (не повезли)Свойство Javascript .length и строковая/числовая проверка

if(firstName.value="" || isNaN(firstName) 
{ 
    errorMessage = "Enter valid first name. No numbers." 
} 

Это то, что у меня есть, но город менее 3 полукокса , не работает? наряду с проверкой, является ли ввод числовым или строковым.

var errorMessage = ""; 

    if(firstName.value == "") 
    { 
     errorMessage = "Enter a valid first name.\n"; 
    } 

if(lastName.value == "") 
{ 
    errorMessage = errorMessage + "Enter a valid last name.\n"; 
    } 
    if(age.value =="" || age.value <= 0) 
    { 
     errorMessage = errorMessage + "Enter a valid age. No strings\n"; 
    } 

    if(city.value == "" || city.length < 3) 
    { 
     errorMessage = errorMessage + "Enter a valid city, more than 3 char."; 
    } 



    //displays error messages 
    if(firstName.value=="" || lastName.value == "" || age.value=="" || age.value <=0 || city.value=="" || city.length <3) 
    { 
     alert(errorMessage); 

    } 

    else{ 
     alert("success"); 
    } 

Заранее спасибо.

+0

Как вы получаете firstName, GetElementBy ...? –

+0

как вы получаете значение города –

+0

Убедитесь, что 'city' определен и содержит строку. –

ответ

0

Держа с вашей структурой, это, вероятно, следует

city.value == "" || city.value.length < 3 

На экране это, только буквы, вы могли бы включать в себя регулярное выражение заявление

city.value == "" || city.value.length < 3 || /^[a-zA-Z]+$/.test(city.value) 

1. регулярное выражение из ответа здесь : https://stackoverflow.com/a/3073186/1026459

+0

Спасибо, Трэвис! Это сработало, теперь я знаю, что мне нужно .value там тоже! Оцените помощь. Любой совет по разрешению только строки? Попробовал isNaN несколько раз, но это не сработало. Любой совет будет оценен, спасибо снова – Atlas182

+0

@ Atlas182 - См. правки для примера, допускающие только буквы –

+0

Красота, спасибо снова. Я посмотрел в свои силовые пункты на следующей неделе и изучал регулярные выражения. Это то, что тогда? И я мог бы использовать то же самое для чисел, но вместо [a-zA-Z] .. замените его, скажем, [1-100]. – Atlas182

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