http://www.cnblogs.com/iammrwu/archive/2011/11/26/2264455.html
出於網頁安全,input里邊的內容全部被和諧~但是過去已經發表的沒問題,所以上邊的鏈接可以測測看,挺好玩的~下邊附上我的代碼,有興趣的可以本地跑一跑,這些只看別人的不親手實踐就太形式化了
<%@ page language="java" contentType="text/html; charset=gb2312" pageEncoding="gb2312"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>Insert title here</title> </head> <body> <style> .yy{font-family:"楷體";font-size:24px;color:#9932CC;} </style> <div class="yy"> <font color="#DC143C" size="4">非法輸入的兩種報錯處理:</font><br/> 只能輸入數字(非法輸入將彈出提示對話框)<input type="text" name="txt1" onchange="if(/\D/.test(this.value)){alert('只能輸入數字');this.value='';}" /><br/> <font color="#EE82EE" size="4">true:0|123|0123|... false:a|12c|1.|...</font><br/> 只能輸入數字(非法輸入將直接替換為空)<input onkeyup="this.value=this.value.replace(/\D/g,'')" type="text" /><br/> <font color="#EE82EE" size="4">true:0|123|0123|... false:a|12c|1.|...</font><br/> <font color="#DC143C" size="4">后文中統一使用第二種(非法輸入將直接替換為空)</font><br/><br/> 1.只能輸入數字 <input onkeyup="value=value.replace(/\D/g,'')" type="text" /><br/> <!-- OR value=value.replace(/[^\d]/g,'') --> <font color="#EE82EE" size="4"> true:0|123|0123|... false:a|12c|1.|...</font><br/> 2.只能輸入數字和英文的 <input onkeyup="value=value.replace(/[\W]/g,'') " type="text" /><br/> <font color="#EE82EE" size="4">true:0|A|a|... false:-|a*|1.|...</font><br/> 3.只能輸入中文的 <input onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" type="text"/><br/> <font color="#EE82EE" size="4">true:哈哈哈|... false:a|12c|1.|...</font><br/> 4.只能輸入大小寫英文 <input onkeyup="value=value.replace(/[^\a-\z\A-\Z]/g,'')" type="text" /><br/> <font color="#EE82EE" size="4">true:abc|ABC|... false:a1|a.|...</font><br/> 5.只能輸入非負有理數 <input onkeyup="if(isNaN(value))execCommand('undo')" type="text" /><br/> <font color="#EE82EE" size="4"> true:0.1|12|12.3|... false:.0|1.2.|a|...</font><br/> 6.只能輸入負有理數 <input onkeypress="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" onkeyup="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" onblur="if(!this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?|\.\d*?)?$/))this.value=this.o_value;else{if(this.value.match(/^\.\d+$/))this.value=0+this.value;if(this.value.match(/^\.$/))this.value=0;this.o_value=this.value}" type="text" /><br/> <font color="#EE82EE" size="4"> true:+1.2|-1.2|0.12|... false:+-|0.1.|1+|...</font><br/> 7.不能輸入數字 <input onkeyup="value=value.replace(/[\d]/g,'') " type="text" /> <br /> <font color="#EE82EE" size="4"> true:abc|+-*/?!|哈哈哈|... false:012|...</font><br/> 8.只能輸入英文字母和數字 <input onkeyup="value=value.replace(/[^\w]/ig,'')" type="text" /><br/> <font color="#EE82EE" size="4"> true:abc|ABC|123|... false:+-|哈哈哈|./\?!|...</font><br/> 9.只能輸入數字0 <input onkeyup="value=value.replace(/[^0]/g,'')" type="text" /> <br/> <font color="#EE82EE" size="4"> true:0|00|000|... false:1|+|s|...</font><br/> 10.除數字0以外均可輸入 <input onkeyup="value=value.replace(/0/g,'')" type="text" /> <br/> <font color="#EE82EE" size="4"> true:abc|+-|456|... false:0</font><br/> 11.小數點后最多只能有兩位數字(不能輸入字母和運算符號) <input onkeypress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || /\.\d\d$/.test(value))event.returnValue=false" type="text" /><br/> <font color="#EE82EE" size="4"> true:123|0.12|.56|... false:0f|0.123|.f|...</font><br/> </div> </body> </html>