文本框限定输入数字以及文本框限定输入价格小数位两位小数
此脚本实现限定输入无效字符!如有错误请大家指正!KeyCode 参考http://www.cnblogs.com/pyt5208/archive/2007/11/03/947738.html


<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>无标题页</title>
<script language="javascript" type="text/javascript">
function changePrice(textId)
{
var text=textId.value;
var tempStr=text.indexOf(".");
if(tempStr!=-1)
var index=tempStr;
var code=window.event.keyCode;
var lastValue =text.substring(text.length - 1);
var lastIndex = text.lastIndexOf(lastValue);
if(code>47&&code<58) /*----键盘0-9的code码-----*/
{
/*--------此处限定输入字节长度,长度不冷超过9 ----------- */
if(text.length >= 9)
{
event.returnValue = false;
}
else if(lastIndex - index >= 2) /*-------此处限定小数位只能输入2位小数-------------*/
{
event.returnValue = false;
}
else
{
}
}
else if(code > 95 && code <106) /*----数字键盘0-9的code码-----*/
{
if(text.length >= 9) /*--------此处限定输入字节长度,长度不冷超过9 ----------- */
{
event.returnValue = false;
}
else if(lastIndex - index >= 2) /*-------此处限定小数位只能输入2位小数-------------*/
{
event.returnValue = false;
}
}
else if(code==190 && tempStr==-1) /*----第一次输入"."小数点时-----*/
{
if(text.length >= 9)
{
event.returnValue = false;
}
else if(text.length-1==tempStr) /*------输入的第一个字节不能为小数点--------*/
{
event.returnValue = false;
}
}
else if(code==8) /*------返回键-----*/
{
}
else
{
event.returnValue = false;
}
}
function editPrice(textId)
{
var text = textId.value;
var firstText = text.substring(0,1);
var lastText = text.substring(text.length - 1);
if(lastText == ".") /*----去掉最后一个小数点-----*/
{
textId.value = text.substring(0,text.length-1);
}
}
function changeCount(textId)
{
var text=textId.value;
var tempStr=text.indexOf("0");
var code=window.event.keyCode;
if(code>47&&code<58) /*----键盘0-9的code码-----*/
{
/*--------此处限定输入字节长度,长度不冷超过9 ----------- */
if(text.length >= 9)
{
event.returnValue = false;
}
else
{
if(code==48||code==96)
{
if(text.length - 1 == tempStr && tempStr==-1)
{
event.returnValue = false;
}
}
}
}
else if(code > 95 && code <106) /*----数字键盘0-9的code码-----*/
{
if(text.length >= 9) /*--------此处限定输入字节长度,长度不冷超过9 ----------- */
{
event.returnValue = false;
}
else
{
if(code==48||code==96)
{
if(text.length - 1 == tempStr && tempStr == -1)
{
event.returnValue = false;
}
}
}
}
else if(code==8) /*------返回键-----*/
{
}
else
{
event.returnValue = false;
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<input id="Text1" type="text" onkeydown="changePrice(this)" onblur ="editPrice(this)" />
<input id ="text2" type ="text" onkeydown = "changeCount(this)" />
</div>
</form>
</body>
</html>