一个只能输入数值的文本框,很简单,支持2,8,10,16进制
可以通过修改input对象的jinzhi属性来控制是哪种数值输入.
<script language="JavaScript">
<!--
function chkInp(){
var regCh = null;
var regAll = null;
switch(event.srcElement.jinzhi){
case "bin": regCh = /[0-1]/; regAll = /^[0-1]*$/; break;
case "oct": regCh = /[0-7]/; regAll = /^[0-7]*$/; break;
case "hex": regCh = /[0-9a-fA-F]/; regAll = /^[0-9a-fA-F]*$/; break;
default: regCh = /[0-9]/; regAll = /^[0-9]*$/; break;
}
switch(event.type){
case "keypress": event.returnValue = regCh.test(String.fromCharCode(event.keyCode)); break;
case "paste" : event.returnValue = regAll.test(window.clipboardData.getData("text")); break;
case "drop" : event.returnValue = regAll.test(event.dataTransfer.getData("text")); break;
case "blur" : if(regAll.test(event.srcElement.vlaue)) alert("输入非法"); return;
default: break;
}
}
//-->
</script>
<input type="text" jinzhi="" onkeypress="chkInp()" onpaste="chkInp()" ondrop="chkInp()" onblur="chkInp()"><br>
0123456789<br>
abcdefghijklmnopqrstuvwxyz<br>
ABCDEFGHIJKLMNOPQRSTUVWXYZ<BR>
~!@#$%^&*()_+}{":?><|,./\';[]=-<br>
问题点数:20、回复次数:5Top
1 楼kangqin(小康)回复于 2006-03-07 19:58:51 得分 4
不错,很有用:)Top
2 楼mingxuan3000(铭轩)回复于 2006-03-07 20:00:13 得分 4
收藏Top
3 楼kofkyo(一步一步)回复于 2006-03-07 21:46:41 得分 4
收藏Top
4 楼aniude(重返荣耀)回复于 2006-03-08 01:03:21 得分 4
顶了Top
5 楼xueyi0108(西紅柿炒自己^ǒ^)回复于 2006-04-04 12:08:52 得分 4
厉害,我正找呢,谢谢~Top




