<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>无标题文档</title> <script> window.onload = function(){ var Otxt = document.getElementById("txt1"); Otxt.onchange = function(){ inputChk(this); } } function inputChk(f){ var error_mes = "输入成功"; if(!f.value.match(/^[0-9A-Za-z]{0,}$/)){ error_mes ="输入的内容只能是数字或字母! "; } window.alert(error_mes); return false; } </script> </head> <body> <input type="text" id="txt1" /> </body> </html>
这是验证输入框不能输入特殊字符的正则表达式。每次使用到正则表达式的时候,都是百度百度百度,不明其意就直接用上了。所以趁着公司不忙着手学习吧。
/^[0-9A-Za-z]{0,}$/ ^是表示匹配行的开始,同理$是表示匹配行的结束 。
而[0-9A-Za-z]表示0-9或A-Z或a-z之间任意字符,因为[xyz]是字符集,匹配其中x、y、z任一字符;[a-z]则表示字符范围,匹配指定范围内的字符。
而{n,}则表示至少重复n次,{0,}是重复至少0次,等价于*。