在使用Jquery获取其值时,检查表单字段是否为数字

时间:2009-11-10 02:26:59

标签: javascript jquery

基本上,我这样做:

var phone = $("#phone").val();

然后我想检查一下:

1)手机只包含数字

2)手机至少包含10位数字

但问题是,根据我的经验,使用$("something").val() 将其作为字符串返回,以便isNaN()失败。但我不想使用parseInt(),因为它也会将字符串更改为数字,然后isNaN()将始终通过。

思想?

2 个答案:

答案 0 :(得分:3)

你可以使用像这样的正则表达式:

if (phone.match(/^\d{10,}$/)) {
    // the input contains at least 10 digits
}

答案 1 :(得分:1)

像@Andrew一样,你可以使用reg ex来做这样的检查。

var regExp = new RegExp("^"+pattern+"$","");
return regExp.test(value);

将上述内容放入一个函数中并将patern传递给它以使其可重复使用。

将模式替换为符合您要求的模式。来自@Andrew的那个看起来会起作用。