JavaScript - как проверить поле, чтобы разрешить определенный символ и определенную длину - PullRequest
1 голос
/ 20 декабря 2010

Мне нужно проверить текстовое поле, поэтому его значение состоит из 10 символов (не больше, не меньше).Приведенный ниже код делает это, позволяя мне установить ограниченную длину для каждого поля в отдельности.

 function charLength(elem, min, max){
 var uInput = elem.value;
 if(uInput.length >= min && uInput.length <= max){
                alert("Invalid number of characters");
  elem.focus();
  return false;
 }else{
  return true;
 }
}

, и вот как я его называю:

onBlur="charLength(document.getElementById('tf1'),1,9)"

но поле, котороеЯ подтверждаю, должен быть не только 10 символов длиной, но он также должен начинаться с буквы Z.

Как мне сделать такую ​​проверку?это возможно в первую очередь?

Ответы [ 4 ]

2 голосов
/ 20 декабря 2010

попробуйте также:

 function charZ10(elem, min, max){
 var uInput = elem.value;
     if(uInput.length >= min && uInput.length <= max && uInput.substr(0, 1) == "Z"){
          alert("Material number has to consist of 10 characters begining with Z");
          elem.focus();
        return false;
     }
     else return true; //i 
}

и попробуйте добавить maxlength в текстовое поле

<input type="text" maxlength="10">
1 голос
/ 20 декабря 2010
function charZ10(elem) {
    var pass = /^Z.{9}$/.test(elem.value); // 10 chars starting with Z
    if (!pass) {
        alert("Try again, noob.");
        elem.focus();
    }
    return pass;
}
1 голос
/ 20 декабря 2010
function charZ10(elem, min, max){
    var uInput = elem.value;
    if(uInput.length == 10 && uInput.substr(0, 1) == "Z")
        return true;
    alert("Material number has to consist of 10 characters begining with Z");
    elem.focus();
    return false;
}
0 голосов
/ 20 декабря 2010

Должно быть

 if(uInput.length <= 10 && substr(uInput,0, 1) == "Z")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...