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