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和小数点(.),并且减号只能出现在数字的开头,不能出现在数字的中间或结尾,小数点也只能在数字的中间出现一次。凡是输入了不满足该条件的值都将被自动清空。
时间: 2024-10-09 02:55:43