Jquery对文本框的值、字符串的验证;正则表达式字符串的验证
<!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>
<title></title>
<script src="Js/jquery-1.9.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
(function ($) {
$.extend({
/***
*验证是否为 手机号码 是返回true ,否则返回 false
*参数 :$textId: 文本框id
*/
IsMobileTextId: function ($textId) {
var $obj = $("#" + $textId); //存储当前文本框对象
var valStr = $obj.val(); //或者文本框的值
var result = $.IsMobileTextVal(valStr);
if (!result) { //判断返回值 是否为手机号
$obj.focus(); //获得光标
}
return result;
},
/***
*验证是否为 手机号码 是返回true ,否则返回 false
*参数 :valStr : 文本框的值
*/
IsMobileTextVal: function (valStr) {
if (valStr && /^1[3|4|5|7|8]\d{9}$/.test(valStr)) { //判断是否为手机号
return true;
} else { //不是手机号
return false;
}
},
/***
*验证是否为 座机 是返回true ,否则返回 false
*参数 :$textId: 文本框id
*/
IsPhoneTextId: function ($textId) {
var $obj = $("#" + $textId); //存储当前文本框对象
var valStr = $obj.val(); //或者文本框的值
var result = $.IsPhoneTextVal(valStr);
if (!result) { //判断返回值 是否为手机号
$obj.focus(); //获得光标
}
return result;
},
/***
*验证是否为 座机 是返回true ,否则返回 false
*参数 :valStr : 文本框的值
*/
IsPhoneTextVal: function (valStr) {
if (valStr && /^(\d{3,4}-?)?\d{7,9}$/.test(valStr)) { //判断是否为手机号
return true;
} else { //不是手机号
return false;
}
},
/***
*验证是否为Email 是返回true ,否则返回 false
*参数 :$textId: 文本框id
*/
IsEmailTextId: function ($textId) {
var $obj = $("#" + $textId); //存储当前文本框对象
var valStr = $obj.val(); //或者文本框的值
var result = $.IsEmailTextVal(valStr);
if (!result) { //判断返回值 是否为正确
$obj.focus(); //获得光标
}
return result;
},
/***
*验证是否为Email 是返回true ,否则返回 false
*参数 :valStr : 文本框的值
*/
IsEmailTextVal: function (valStr) {
if (valStr && /^([a-zA-Z0-9_\.\-+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(valStr)) { //判断是否为正确
return true;
} else { //不正确
return false;
}
},
/***
*验证是否为 正整数 是返回true ,否则返回 false
*参数 :$textId: 文本框id
*/
IsPositiveIntTextId: function ($textId) {
var $obj = $("#" + $textId); //存储当前文本框对象
var valStr = $obj.val(); //或者文本框的值
var result = $.IsPositiveIntTextVal(valStr);
if (!result) { //判断返回值 是否为正确
$obj.focus(); //获得光标
}
return result;
},
/***
*验证是否为 正整数 是返回true ,否则返回 false
*参数 :valStr : 文本框的值
*/
IsPositiveIntTextVal: function (valStr) {
if (valStr && /^[0-9]*[1-9][0-9]*$/.test(valStr)) { //判断是否为正确
return true;
} else { //不正确
return false;
}
},
/***
*验证是否为 数字 是返回true ,否则返回 false
*参数 :$textId: 文本框id
*/
IsNumberTextId: function ($textId) {
var $obj = $("#" + $textId); //存储当前文本框对象
var valStr = $obj.val(); //或者文本框的值
var result = $.IsNumberTextVal(valStr);
if (!result) { //判断返回值 是否为正确
$obj.focus(); //获得光标
}
return result;
},
/***
*验证是否为 数字 是返回true ,否则返回 false
*参数 :valStr : 文本框的值
*/
IsNumberTextVal: function (valStr) {
if (valStr && /^[-\+]?\d+$/.test(valStr) || /^[-\+]?\d+(\.\d+)?$/.test(valStr)) { //判断是否为正确
return true;
} else { //不正确
return false;
}
},
/***
*验证是否为 浮点数 是返回true ,否则返回 false
*参数 :$textId: 文本框id
*/
IsFloatTextId: function ($textId) {
var $obj = $("#" + $textId); //存储当前文本框对象
var valStr = $obj.val(); //或者文本框的值
var result = $.IsFloatTextVal(valStr);
if (!result) { //判断返回值 是否为正确
$obj.focus(); //获得光标
}
return result;
},
/***
*验证是否为 浮点数 是返回true ,否则返回 false
*参数 :valStr : 文本框的值
*/
IsFloatTextVal: function (valStr) {
if (valStr && /^[-\+]?\d+(\.\d+)?$/.test(valStr)) { //判断是否为正确
return true;
} else { //不正确
return false;
}
},
/***
*验证是否为 邮政编码验证 是返回true ,否则返回 false
*参数 :$textId: 文本框id
*/
IsZipCodeTextId: function ($textId) {
var $obj = $("#" + $textId); //存储当前文本框对象
var valStr = $obj.val(); //或者文本框的值
var result = $.IsZipCodeTextVal(valStr);
if (!result) { //判断返回值 是否为正确
$obj.focus(); //获得光标
}
return result;
},
/***
*验证是否为 邮政编码验证 是返回true ,否则返回 false
*参数 :valStr : 文本框的值
*/
IsZipCodeTextVal: function (valStr) {
if (valStr && /^[0-9]{6}$/.test(valStr)) { //判断是否为正确
return true;
} else { //不正确
return false;
}
},
/***
*验证是否为 身份证号码验证 是返回true ,否则返回 false
*参数 :$textId: 文本框id
*/
IsIdCardNoTextId: function ($textId) {
var $obj = $("#" + $textId); //存储当前文本框对象
var valStr = $obj.val(); //或者文本框的值
var result = $.IsIdCardNoTextVal(valStr);
if (!result) { //判断返回值 是否为正确
$obj.focus(); //获得光标
}
return result;
},
/***
*验证是否为 身份证号码验证 是返回true ,否则返回 false
*参数 :valStr : 文本框的值
*/
IsIdCardNoTextVal: function (valStr) {
var len = valStr.length, re;
if (len == 15)
re = new RegExp(/^(\d{6})()?(\d{2})(\d{2})(\d{2})(\d{2})(\w)$/);
else if (len == 18)
re = new RegExp(/^(\d{6})()?(\d{4})(\d{2})(\d{2})(\d{3})(\w)$/);
else {
//alert("输入的数字位数不对。");
return false;
}
var a = valStr.match(re);
if (a != null) {
if (len == 15) {
var D = new Date("19" + a[3] + "/" + a[4] + "/" + a[5]);
var B = D.getYear() == a[3] && (D.getMonth() + 1) == a[4] && D.getDate() == a[5];
}
else {
var D = new Date(a[3] + "/" + a[4] + "/" + a[5]);
var B = D.getFullYear() == a[3] && (D.getMonth() + 1) == a[4] && D.getDate() == a[5];
}
if (!B) {
//alert("输入的身份证号 "+ a[0] +" 里出生日期不对。");
return false;
}
}
if (!re.test(valStr)) {
//alert("身份证最后一位只能是数字和字母。");
return false;
}
return true;
},
/***
*验证是否为 IP地址验证 是返回true ,否则返回 false
*参数 :$textId: 文本框id
*/
IsIpAddressTextId: function ($textId) {
var $obj = $("#" + $textId); //存储当前文本框对象
var valStr = $obj.val(); //或者文本框的值
var result = $.IsIpAddressTextVal(valStr);
if (!result) { //判断返回值 是否为正确
$obj.focus(); //获得光标
}
return result;
},
/***
*验证是否为 IP地址验证 是返回true ,否则返回 false
*参数 :valStr : 文本框的值
*/
IsIpAddressTextVal: function (valStr) {
if (valStr && /^(([1-9]|([1-9]\d)|(1\d\d)|(2([0-4]\d|5[0-5])))\.)(([1-9]|([1-9]\d)|(1\d\d)|(2([0-4]\d|5[0-5])))\.){2}([1-9]|([1-9]\d)|(1\d\d)|(2([0-4]\d|5[0-5])))$/.test(valStr)) { //判断是否为正确
return true;
} else { //不正确
return false;
}
},
/***
*验证是否为 匹配密码,只能是字母、数字和下划线。 是返回true ,否则返回 false
*参数 :$textId: 文本框id
*/
IsPasswordTextId: function ($textId) {
var $obj = $("#" + $textId); //存储当前文本框对象
var valStr = $obj.val(); //或者文本框的值
var result = $.IsPasswordTextVal(valStr);
if (!result) { //判断返回值 是否为正确
$obj.focus(); //获得光标
}
return result;
},
/***
*验证是否为 匹配密码,只能是字母、数字和下划线。 是返回true ,否则返回 false
*参数 :valStr : 文本框的值
*/
IsPasswordTextVal: function (valStr) {
if (valStr && /^[\w]{6,12}$/.test(valStr)) { //判断是否为正确
return true;
} else { //不正确
return false;
}
},
/***
*验证是否为 车牌号校验 是返回true ,否则返回 false
*参数 :$textId: 文本框id
*/
IsPlateNoTextId: function ($textId) {
var $obj = $("#" + $textId); //存储当前文本框对象
var valStr = $obj.val(); //或者文本框的值
var result = $.IsPlateNoTextVal(valStr);
if (!result) { //判断返回值 是否为正确
$obj.focus(); //获得光标
}
return result;
},
/***
*验证是否为 车牌号校验 是返回true ,否则返回 false
*参数 :valStr : 文本框的值
*/
IsPlateNoTextVal: function (valStr) {
if (valStr && /^[\u4e00-\u9fa5]{1}[A-Z]{1}[A-Z_0-9]{5}$/.test(valStr)) { //判断是否为正确
return true;
} else { //不正确
return false;
}
},
/***
*验证是否为 QQ校验 是返回true ,否则返回 false
*参数 :$textId: 文本框id
*/
IsQQTextId: function ($textId) {
var $obj = $("#" + $textId); //存储当前文本框对象
var valStr = $obj.val(); //或者文本框的值
var result = $.IsQQTextVal(valStr);
if (!result) { //判断返回值 是否为正确
$obj.focus(); //获得光标
}
return result;
},
/***
*验证是否为 QQ校验 是返回true ,否则返回 false
*参数 :valStr : 文本框的值
*/
IsQQTextVal: function (valStr) {
if (valStr && /^[1-9]\d{4,12}$/.test(valStr)) { //判断是否为正确
return true;
} else { //不正确
return false;
}
}
});
})(jQuery);
$(function () {
$("#Validate").click(function () {
var result = "";
//result= $.IsMobileTextId("moblie");
//result = $.IsPhoneTextId("Phone");
//result = $.IsEmailTextVal("Email");
//result = $.IsPositiveIntTextId("int_1");
//result = $.IsNumberTextId("Number");
// result = $.IsFloatTextId("Float");
// result = $.IsZipCodeTextId("ZipCode");
//result = $.IsIdCardNoTextId("IdCardNo");
//result = $.IsIpAddressTextId("IpAddress");
result = $.IsPasswordTextId("Password");
//result = $.IsPlateNoTextId("PlateNo");
//result = $.IsQQTextId("QQ");
alert(result);
});
});
</script>
</head>
<body>
手机号码:<input id="moblie" type="text" /><br />
座机:<input id="Phone" type="text" /><br />
Email:<input id="Email" type="text" /><br />
正整数:<input id="int_1" type="text" /><br />
数字:<input id="Number" type="text" /><br />
浮点数:<input id="Float" type="text" /><br />
邮政编码:<input id="ZipCode" type="text" /><br />
省份证号码验证:<input id="IdCardNo" type="text" /><br />
ip地址:<input id="IpAddress" type="text" /><br />
匹配密码,只能是字母、数字和下划线:<input id="Password" type="text" /><br />
车牌号校验:<input id="PlateNo" type="text" /><br />
QQ:<input id="QQ" type="text" /><br />
<input type="submit" id="Validate" />
</body>
</html>