我有这个功能:

function validate(str1,str2,str3){
  var alph=/^[A-Za-zÑñ]*$/;

  if((str1.match(alph) || str2.match(alph) || str3.match(alph))){
    return true;
  }else{
    return false;
  }
}


如果我在输入文本中输入任何字母字符,它将返回true。但是,当我输入任何数字时,它也会返回true。

我只需要接受字母字符和空格,仅此而已。

谁能帮我?

最佳答案

如果传递的任何字符串均无效,则函数应返回false,则需要逻辑AND:

return str1.match(alph) && str2.match(alph) && str3.match(alph);


另外,如果不使用匹配结果,则可以使用alph.test()代替:

return alph.test(str1) && alph.test(str2) && alph.test(str3);

07-28 10:28