// check nummric
function isNumeric(p) { // /^/d+$/.test(str)
if ( /^ (/ +|- ) ? ( 0 | [ 1 - 9 ]/d * )(/./d * [ 1 - 9 ]) ? $ / .test(p))
return true ;
else
return false ;
}
注释:
//d+(/./d+)?/g
/d表示数字
/d+表示一个以上的数字
/.表示.
/./d+表示一个.后边有一个以上的数字
(/./d+)?表示有0或1组一个.后边有一个以上的数字组成的串
/d+(/./d+)?表示一组由一个以上的数字和有0或1组一个.后边有一个以上的数字组成的串
g表示全局检测
如果这都看不懂,请找本js手册看看正则表达式的介绍。
/^(/+|-)?(0|[1-9]/d*)(/./d*[1-9])?$/ 这个正则可以比较齐全地判断是否为数字。
摘自:http://www.blogjava.net/zolly/archive/2006/09/20/70846.aspx