常用正则表达式
/^\\d+$/
/^[0-9]*[1-9][0-9]*$/
/^((-\\d+)|(0+))$/
/^-[0-9]*[1-9][0-9]*$/
/^-?\\d+$/
/^\\d+(/
/^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$/
/^((-\\d+(/
/^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$/
/^(-?\\d+)(/
/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/
长度限制
<script>
function test() {
if(document.a.b.value.length>50){
alert("不能超过50个字符!");
document.a.b.focus();
return false;
}
}
</script>
<form name=a onsubmit="return test()">
<textarea name="b" cols="40" wrap="VIRTUAL" rows="6"></textarea>
<input type="submit" name="Submit" value="check">
</form>
只能是汉字
<input οnkeyup="value="/oblog/value.replace(/[^\u4E00-\u9FA5]/g,'')">
只能是英文
<script language=javascript>
function onlyEng(){
if(!(event.keyCode>=65&&event.keyCode<=90))
event.returnvalue=false;
}
</script>
<input onkeydown="onlyEng();">
只能是数字
<script language=javascript>
function onlyNum(){
if(!((event.keyCode>=48&&event.keyCode<=57)||(event.keyCode>=96&&event.keyCode<=105)))
event.returnvalue=false;
}
</script>
<input onkeydown="onlyNum();">
只能是英文字符和数字
<input οnkeyup="value="/oblog/value.replace(/[\W]/g,"'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))">
验证邮箱格式
<script>
function isEmail(strEmail) {
if (strEmail.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1)
return true;
else
alert("oh");
}
</script>
<input type=text onblur=isEmail(this.value)>
屏蔽关键字(这里屏蔽***和****)
<script language="javascript1.2">
function test() {
if((a.b.value.indexOf ("***") == 0)||(a.b.value.indexOf ("****") == 0)){
alert(":)");
a.b.focus();
return false;
}
}
</script>
<form name=a onsubmit="return test()">
<input type=text name=b>
<input type="submit" name="Submit" value="check">
</form>
两次输入密码是否相同
<form method="post" action="">
<input type="password" id="input1">
<input type="password" id="input2">
<input type="button" value="test" onclick="check()">
</form>
<script>
function check()
{
with(document.all){
if(input1.value!=input2.value){
alert("false")
input1.value = "";
input2.value = "";
}else{
document.forms[0].submit();
}
}
}
</script>
屏蔽右键
// 加在body中
oncontextmenu="return false" ondragstart="return false" onselectstart="return false"
表单项不能为空
function CheckForm(){
if(document.form.name.value.length == 0) {
alert("请输入您姓名!");
document.form.name.focus();
return false;
}
return true;
}
比较两个表单项的值是否相同
function CheckForm()
if (document.form.PWD.value != document.form.PWD_Again.value) {
alert("您两次输入的密码不一样!请重新输入.");
document.ADDUser.PWD.focus();
return false;
}
return true;
}
限定表单项不能输入的字符
function contain(str, charset) {
var i;
for (i = 0; i < charset.length; i++)
if (str.indexOf(charset.charAt(i)) >= 0)
return true;
return false;
}
function CheckForm() {
if ((contain(document.form.NAME.value, "%\(\)><")) || (contain(document.form.MESSAGE.value, "%\(\)><"))) {
alert("输入了非法字符");
document.form.NAME.focus();
return false;
}
return true;
}
检查一段字符串是否全由数字组成
function checkNum(str) { return str.match(/\D/) == null }
alert(checkNum("1232142141"))
alert(checkNum("123214214a1"))
怎么判断是否是字符
if (/[^\x00-\xff]/g.test(s)) {
alert("含有汉字");
} else {
alert("全是字符");
}
怎么判断是否含有汉字
if (escape(str).indexOf("%u") != -1) {
alert("含有汉字");
} else {
alert("全是字符");
}
邮箱格式验证
function chkemail(a) {
var i = a.length;
var temp = a.indexOf('@');
var tempd = a.indexOf('.');
if (temp > 1) {
if ((i - temp) > 3) {
if ((i - tempd) > 0) {
return 1;
}
}
}
return 0;
}
数字格式验证
function fucCheckNUM(NUM) {
var i, j, strTemp;
strTemp = "0123456789";
if (NUM.length == 0)
return 0
for (i = 0; i < NUM.length; i++) {
j = strTemp.indexOf(NUM.charAt(i));
if (j == -1) {
return 0;
}
}
return 1;
}
电话号码格式验证
function fucCheckTEL(TEL) {
var i, j, strTemp;
strTemp = "0123456789-()# ";
for (i = 0; i < TEL.length; i++) {
j = strTemp.indexOf(TEL.charAt(i));
if (j == -1) {
return 0;
}
}
return 1;
}
判断输入是否为中文的函数
function ischinese(s) {
var ret = true;
for (var i = 0; i < s.length; i++){
ret = ret && (s.charCodeAt(i) >= 10000);
}
return ret;
}
判断用户名是否为数字字母下滑线
function notchinese(str) {
var reg = /[^A-Za-z0-9_]/g
if (reg.test(str)) {
return (false);
} else {
return (true);
}
}
密码验证:规则为6到16个字符、下划线,第一个字符为字母。
function validatorPassword(s){
regu = "^[a-zA-Z][0-9a-zA-Z_]{5,15}$";
re = new RegExp(regu);
if (!re.test(s)) {
document.getElementById("passwordInf").innerHTML = "不对!";
document.getElementById("passwordInf").style.color = "red";
} else {
document.getElementById("passwordInf").innerHTML = "通过!";
document.getElementById("passwordInf").style.color = "green";
document.getElementById("passwordCheck").innerHTML = "";
}
}