完美的文本只能输入数字问题!
2008-06-26 16:53
211 查看
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <title></title> <script type="text/javascript"> //正整数的验证 function valNum(ev) { if(window.event.shiftKey) { ev.returnValue = ""; } else { 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 && e != 9) { if(ev.ctrlKey == false) { //不允许的就清空! ev.returnValue = ""; } else { //验证剪贴板里的内容是否为数字! valClip(ev); } } } } //验证剪贴板里的内容是否为数字! function valClip(ev) { //查看剪贴板的内容! try { var content = clipboardData.getData("Text"); if(content != null) { 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("粘贴出现错误!"); } } //验证浮点数 function valFloat(ev,thisValue) { if(window.event.shiftKey==false) { if(thisValue!="") { var e = ev.keyCode; var re=//./g; var arr; if((arr = re.exec(thisValue)) == null) { //允许的有大、小键盘的数字,左右键,backspace, delete, Control + C, Control + V,小数点 if(e!=190 && e!=110&& 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 && e != 9) { if(ev.ctrlKey == false) { //不允许的就清空! ev.returnValue = ""; } else { //验证剪贴板里的内容是否为浮点数! valFloatClip(ev); } } } else { //允许的有大、小键盘的数字,左右键,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 && e != 9) { if(ev.ctrlKey == false) { //不允许的就清空! ev.returnValue = ""; } else { //验证剪贴板里的内容是否为浮点数! valFloatClip(ev); } } } } else { valNum(ev); } } else { ev.returnValue = ""; } } //验证剪贴板里的内容是否为浮点数字! function valFloatClip(ev) { //查看剪贴板的内容! try { //如果不是数字将内容清空! var content = clipboardData.getData("Text"); if(content != null) { var test = parseFloat(content); var str = "" + test; if(isNaN(test) == true) { //如果不是数字将内容清空! clipboardData.setData("Text",""); } else { if(str != content) clipboardData.setData("Text", str); } } } catch(e) { //清空出现错误的提示! alert("粘贴出现错误!"); } } //正则float function validfloat(thisValue) { var rgExp=/((-//d+(//.//d+)?)|(0+(//.0+)?))/; var str=thisValue; if(rgExp.exec(str)) { return true; } else { return false; } } </script> </head> <body> <form runat="server"> 正整数<input id="Text1" type="text" oncontextmenu=window.event.returnValue=false onkeydown=" valNum(event);" style="ime-mode: Disabled;" /> 浮点数<input id="Text2" type="text" oncontextmenu=window.event.returnValue=false onkeydown=" valFloat(event,this.value);" style="ime-mode: Disabled;" /> </form> </body> </html>
相关文章推荐
- 完美解决 文本框 只能输入数字问题
- 在文本中框只能输入数字设定
- 让文本输入框只能输入数字
- 文本筐怎样让它只能输入数字(以及怎么只能输入一个小数点和数字)
- 解决html input验证只能输入数字,不能输入其他的问题
- 限制HTML的文本输入框只能输入数字的4种方法
- [Javascript]限制文本输入框只能输入0-9数字
- 限制HTML的文本编辑框只能输入数字4种方法
- input只能输入数字,对数字进行判断,且修复IE下无法使用光标,无法中间输入的问题
- iOS最完美的UITextField中输入金额,只能输入数字和小数点,保留两位小数点且0放在首位
- input文本输入框所有用法 文字显示 点击选框编辑 文本框变色 只能输入中文、英文、数字 只读状态 不能黏贴
- 数字键盘回收的问题-限制只能数字输入
- js实现input输入框只能输入数字的功能(完美测试通过)
- 完美实现控制文本框只能输入(包括键入和粘贴)数字和至多一个小数点
- 一劳永获的解决textbox 只能输入数字、汉字、字母等问题
- js实现input输入框只能输入数字的功能(完美测试通过)
- js实现input输入框只能输入数字的功能(完美测试通过)
- 让文本输入框只能输入数字
- C#winform只能输入数字后不能复制粘贴问题
- js 限制文本只能输入数字