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代码很简洁,大家可以看下。
<mce:script language=javascript><!--
function onlyNum()
{
if(!((event.keyCode>=48&&event.keyCode<=57)||(event.keyCode>=96&&event.keyCode<=105)))
//考虑小键盘上的数字键
event.returnvalue=false;
}
// --></mce:script>
<input onkeydown="onlyNum();">
下面还有一种比较笨的方法,大家也可以看下,学习嘛
下次贴个用正则验证数字的
<mce: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;
}
// --></mce: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('不是数值')};">
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/heimaoxiaozi/archive/2009/08/01/4400522.aspx