2013-01-22 80 views
18

我想知道是否有人有一个快速和肮脏的jquery方法,将检查值是否是数值?我正在考虑使用正则表达式类型的方法来检查值,如果不是不提交表单。我正在使用jQuery验证,但我遇到了问题,只是加载jquery验证。jquery检查值是否为数字

我只有一个值,我想确保是数字。

+2

看到几个人如http://stackoverflow.com/questions/9716468/is-there-any-function-like-isnumeric-in-javascript-to-validate-numbers – glosrob

+0

你不能做简单的解析,因为它有时会返回一个非数字字符串的数字 - 尝试'console.log(parseInt(“10px”,10))' – Archer

回答

49

当然,使用jQuery的isNumeric()函数。

$.isNumeric("-10");  // true 
$.isNumeric(16);     // true 
$.isNumeric(0xFF);   // true 
$.isNumeric("0xFF"); // true 
$.isNumeric("8e5");  // true (exponential notation string) 
$.isNumeric(3.1415); // true 
$.isNumeric(+10);    // true 
$.isNumeric(0144);   // true (octal integer literal) 
$.isNumeric("");     // false 
$.isNumeric({});     // false (empty object) 
$.isNumeric(NaN);    // false 
$.isNumeric(null);   // false 
$.isNumeric(true);   // false 
$.isNumeric(Infinity); // false 
$.isNumeric(undefined); // false 
+2

有时它会给TypeError:$ .isNumeric不是一个函数,然后使用jQuery .isNumeric()函数 –

+0

也得到TypeError – AlxVallejo

+0

+1,因为您在注释中写入了每个调用与jquery网站文档相比较的结果。 – Samuel