如何使用javascript验证用户输入(字符和数字)?

时间:2019-02-20 11:44:15

标签: javascript jquery

来自this example 单击按钮时,我试图验证用户输入。

$("#check_data").click(function () {
    var $userInput = $('#user_input'); //from HTML input box id="user_input"
    var pattern = " /*My user input always be like "AB1234567"*/ ";
    if ($userInput.val() == '' || !pattern.test($userInput.val())) {
        alert('Please enter a valid code.');
        return false;
    }
});

我的用户输入始终像“ AB1234567”一样,具有完全相同的字符,但具有不同的7位数字。 我是Javascript和Jquery的新手,如果您有更好的方法来验证用户输入,请提出建议。

谢谢。

4 个答案:

答案 0 :(得分:1)

您可以使用下面的正则表达式来检查

/[A-Za-z0-9]/g

您的代码可能是这样

    var _pattern=/[A-Za-z0-9]/g
    if($userInput.val().match(_pattern))
    {
        //your code goes here..
    }

谢谢

答案 1 :(得分:0)

您可以使用以下模式进行检查

/^AB\d{7}$/

您可以将代码更改为

var pattern = '/^AB\d{7}$/';
  if ($userInput.val() == '' || !pattern.test($userInput.val()))
  {
     alert('Please enter a valid code.');
     return false;
  }

\d{7}匹配[0-9]范围内的7位数字

答案 2 :(得分:0)

您可以按照以下代码进行操作:

if ($userInput.val().match(/[^a-zA-Z0-9 ]/g))
{
    // it is a valid value.

} else {
    // show error here
}

希望它对您有帮助。

答案 3 :(得分:0)

尝试这个。

$("#check_data").click(function(){
  var $userInput = $('#user_input').val();
  var pattern = /^AB[0-9]{7}?/g;
  if(!$userInput.match(pattern)){
      alert('Please enter a valid code.');
      return false;
  }
});