javascript数字验证(转)

转自http://www.cnblogs.com/lovelace821/archive/2009/04/27/1444654.html

js验证数字

javascript限制输入的只能是数字,判断event.keyCode的值,并将它限定只能为数字,如果不是数字,则返回错误,如果是数字,则继续。

我先介绍验证javascript是否是数字另一种方式,通过下面的函数来实现:

function isNumber(oNum)

  {

  if(!oNum) return false;

  var strP=/^\d+(\.\d+)?$/;

  if(!strP.test(oNum)) return false;

  try{

  if(parseFloat(oNum)!=oNum) return false;

  }

  catch(ex)

  {

  return false;

  }

  return true;

  }

这段javascript代码很简洁,大家可以看下。

<script language=javascript>

function onlyNum()

{

if(!((event.keyCode>=48&&event.keyCode<=57)||(event.keyCode>=96&&event.keyCode<=105)))

//考虑小键盘上的数字键

event.returnvalue=false;

}

</script>

<input onkeydown="onlyNum();">

下面还有一种比较笨的方法,大家也可以看下,学习嘛

下次贴个用正则验证数字的

<script language="javascript">

function CheckMyForm()

{

var txt = myform.mytext.value;

if(checknumber(txt))

{

alert("只允许输入数字!");

return false;

}

return true;

}

function checknumber(String)

{

var Letters = "1234567890";

var i;

var c;

for( i = 0; i < String.length; i ++ )

{

c = String.charAt( i );

if (Letters.indexOf( c ) ==-1)

{

return true;

}

}

return false;

}

</script>

<body>

<form name="myform" onSubmit="return CheckMyForm()">

<input type="text" name="mytext">

<input type="submit" name="mysubmit">

</form>

</body>

最简单的javascript验证是否不是数字的代码如下:

<input type='TEXT' onKeyPress="if(event.keyCode==13){if(isNaN(this.value))alert('不是数值')};">

原文地址:https://www.cnblogs.com/backpacker/p/2622430.html