Html表单的正则校验--将不符合指定正则表达式的字符串自动替换为空

 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 2 <html>
 3   <head>
 4     <title>checkNum.html</title>
 5     <meta http-equiv="content-type" content="text/html; charset=UTF-8">
 6     
 7     <script type="text/javascript">
 8         function checkNum(el){
 9             var reg = /^-?\d+(\.\d+)?$/;//定义正则表达式
10             if(el.value.search(reg)==-1){//search()方法:用户输入的值如果不符合正则表达式,就返回-1
11                 el.value="";//如果不符合正则表达式就清空
12             }
13         }
14     </script>
15   </head>
16   <body>
17     请输入数字:<input type="text" onchange="checkNum(this)"/>
18   </body>
19 </html>

上面的正则表达式^-?\d+(\.\d+)?$的意思是,校验用户输入的是不是实数(包含整数和小数),也就是说用户只能输入减号(-)、数字0-9和小数点(.),并且减号只能出现在数字的开头,不能出现在数字的中间或结尾,小数点也只能在数字的中间出现一次。凡是输入了不满足该条件的值都将被自动清空。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。