您的位置:首页 > Web前端 > JavaScript

js控制文本框只能输入数字(C#...Web)

2009-12-26 16:29 411 查看
<script language="javascript">
//////只能输入数字
function reginput(obj, reg, inputstr)
{
if(event.srcelement.getattribute("readonly")||event.srcelement.getattribute("disabled"))return false;
if(event.keycode<46 || event.keycode>57)return false;
var docsel = document.selection.createrange();
if (docsel.parentelement().tagname != "input") return false;
osel = docsel.duplicate()
osel.text = ""
var srcrange = obj.createtextrange()
osel.setendpoint("starttostart", srcrange)
var str = osel.text + inputstr + srcrange.text.substr(osel.text.length)
return reg.test(str)
}

function valNum(ev)
{
var e = ev.keyCode;
//允许的有大、小键盘的数字,左右键,backspace, delete, Control + C, Control + V
if(e != 48 && e != 49 && e != 50 && e != 51 && e != 52 && e != 53 && e != 54 && e != 55 && e != 56 && e != 57 && e != 96 && e != 97 && e != 98 && e != 99 && e != 100 && e != 101 && e != 102 && e != 103 && e != 104 && e != 105 && e != 37 && e != 39 && e != 13 && e != 8 && e != 46)
{
if(ev.ctrlKey == false)
{
//不允许的就清空!
ev.returnValue = "";
}
else
{
//验证剪贴板里的内容是否为数字!
valClip(ev);
}
}
}
//验证剪贴板里的内容是否为数字!
function valClip(ev)
{
//查看剪贴板的内容!
var content = clipboardData.getData("Text");
if(content != null)
{
try
{
var test = parseInt(content);
var str = "" + test;
if(isNaN(test) == true)
{
//如果不是数字将内容清空!
clipboardData.setData("Text","");
}
else
{
if(str != content)
clipboardData.setData("Text", str);
}
}
catch(e)
{
//清空出现错误的提示!
alert("粘贴出现错误!");
}
}
}
</script>

<asp:TextBox ID="TBValNum" runat="server" onkeydown="valNum(event);" onpaste="clip(event);"></asp:TextBox>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: