如何检查输入值只有角数?

时间:2015-07-06 09:51:47

标签: javascript regex angularjs validation

我想比较用户输入的字段centerCode的值到输入字段。然后我想检查它是否是一个数字并相应地显示相应的警报。我无法将值或变量数与变量代码进行比较。

 var numbers =/^[0-9]+$/;
 var code = $scope.Nuser.centerCode;
 alert(code);
 if(code.val(numbers))
 {
     alert(code.val(numbers));
 }
 else
 {
     alert("enter numbers only");
 }

4 个答案:

答案 0 :(得分:3)

你是在正确的路线上。数字需要是一个正则表达式,你需要使用test函数来检查它的输入。如果字符串是全部数字,test函数将返回true,如果其中还有其他内容,则返回false。

var numbers = new RegExp(/^[0-9]+$/);
var code = $scope.Nuser.centerCode;

if(numbers.test(code))
{
    alert('code is numbers');
}
else
{
    alert("enter numbers only");
}

答案 1 :(得分:2)

我建议你改用ng-pattern。如下所示:

$(function(){
    $("input[type='checkbox']").each(function(){
        if ( $(this).attr('aria-selected') == 'true' ){
            alert($(this).next().text())

        }
    });
});

它只允许用户输入数字。

您可以使用<input type="text" ng-pattern="/^[0-9]{1,7}$/" ng-model="inputNumber"/> 检查输入的值是否为数字。尝试以下内容:

angular.isNumber

希望这可以解决问题。

答案 2 :(得分:0)

您可以简单地将字符串转换为数字,并测试它是NaN(非数字)

isNaN(+$scope.Nuser.centerCode)

如果它是false,则表示您的centerCode仅包含数字

答案 3 :(得分:0)

试试这个希望这就是你要找的东西

 if(angular.isNumber(value))
       { 
        //your code here 
       }