检查是否存在除数字之外的任

时间:2013-08-15 14:08:33

标签: javascript html

我有一个<input type='text' />元素,用户必须插入一个数字。 如何检查value是否包含除数字之外的内容? (没有但允许数字)

5 个答案:

答案 0 :(得分:1)

使用Regex

var regEx = new RegExp('^[0-9]+$');

请参阅此JSFiddle

var num = 'AA'
var regEx = new RegExp('^[0-9]+$');
alert(regEx.test(num))

答案 1 :(得分:1)

您可以使用HTML 5 pattern attribute<input type="text" pattern="\d*" />

\d*regular expression,读作“数字为零或更多次。”

答案 2 :(得分:0)

使用jQuery - $ .isNumeric(value)

答案 3 :(得分:0)

当用户输入内容时,输入会失去焦点,请尝试以下操作:

    $('input:text').blur(function(){
    var text = $(this).val();
    if (text.match(new RegExp("[^0-9]", "g")) != null){
        alert("Not only numbers entered!");
    }
});

这意味着:当焦点丢失时,我们尝试在输入值中找到非数值

答案 4 :(得分:0)

对于这种情况,这不是最好的,但是:

<input type="text" onkeyup=" if( !+this.value && +this.value != 0 ){ this.value = '' }" />

非常+this.value检查值是否为数字,或者返回NaN。如果它NaN,那么它就会删除该字段。

编辑:添加&&为'0'我的错误