2013-09-06 2 views
2

У меня есть форму, которая принимает имя, номер телефона. В настоящее время я выполнил проверку непустых полей. Я хочу добавить подтверждение имени (алфавитов) и номера телефона (номера).Проверка javascript для непустого, числа и алфавитов

Настоящий код приведен ниже. О представлении формы, я буду называть validateform() функцию:

function validateform() 
{ 
    var str= true; 
    document.getElementById("name").innerHTML=""; 

    if(document.frm.name.value=="") 
    { 
     document.getElementById("name").innerHTML="Please enter Name"; 
     str=false; 
    } 

    return str; 
} 

Введенное значение для имени должно быть только алфавиты. Если нет, я хочу показать сообщение «ввести только алфавиты». Как я должен это делать?

+2

пытался что-нибудь? используйте regex (например, '/^[a-zA-Z] * $ /' только для алфавитов) для проверки и выдачи требуемого сообщения об ошибке. – Harry

+2

Определите «алфавиты». Есть мириады буквенных символов. Какое подмножество вы хотите разрешить? Следует ли исключить Мюллера, Пуанкаре и Страуса? –

ответ

1

Как было отмечено в комментариях, вы можете попробовать что-то вроде этого:

var rule = /^[a-zA-Z]*$/; 
if(rule.test(document.frm.name.value)) { 
    // this contains only letters ! 
} 
1

Вы можете использовать регулярное выражение для того чтобы достигнуть того, что вы пытаетесь сделать.

function validatePhonenumber(value) { 
     var regexp = /^[0-9]+?$/; 
     return regexp.test(value); 
    } 

    function validateAlphabet(value) { 
     var regexp = /^[a-zA-Z ]*$/; 
     return regexp.test(value); 
    } 
1
var alphaExp = /^[a-zA-Z]+$/; 
if(!document.frm.name.match(alphaExp)) 
    { 
     document.getElementById("name").innerHTML="Please enter only alphabets"; 
     str=false; 
    } 

var numExp = /^[0-9]+$/; 
if(!document.frm.phone.match(numExp)) 
    { 
     document.getElementById("phone").innerHTML="Please enter only numbers"; 
     str=false; 
    } 

При этом вам не нужно, чтобы проверить на пустой вход. Если вы хотите обрабатывать пустой ввод отдельно, замените + на * в регулярных выражениях.

1
function alphanumeric(inputtxt) 
{ 
    var letters = /^[0-9a-zA-Z]+$/; 
    if(inputtxt.value.match(letters)) 
    { 
    alert('Your registration number have accepted : you can try another'); 
    document.form1.text1.focus(); 
    return true; 
    } 
    else 
    { 
    alert('Please input alphanumeric characters only'); 
    return false; 
    } 
} 

Подробнее here.

2

/* мобильный номер из 10 цифр */

var digit=10; 

var pattern=/[0-9]{digit}/; 

    if(!pattern.match (phoneno)) 
     alert("not a valid number"); 
Смежные вопросы