jquery表单验证源码
/**
数据验证完整性
**/
$.fn.Validform = function () {
var Validatemsg = "";
var Validateflag = true;
$(this).find("[isvalid=yes]").each(function () {
var checkexpession = $(this).attr("checkexpession");
var errormsg = $(this).attr("errormsg");
if (checkexpession != undefined) {
if (errormsg == undefined) {
errormsg = "";
}
var value = $(this).val();
if ($(this).hasClass('ui-select')) {
value = $(this).attr('data-value');
}
switch (checkexpession) {
case "NotNull":
{
if (isNotNull(value)) {
Validatemsg = errormsg + "不能为空!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "Num":
{
if (!isInteger(value)) {
Validatemsg = errormsg + "必须为数字!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "NumOrNull":
{
if (!isIntegerOrNull(value)) {
Validatemsg = errormsg + "必须为数字!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "Email":
{
if (!isEmail(value)) {
Validatemsg = errormsg + "必须为E-mail格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "EmailOrNull":
{
if (!isEmailOrNull(value)) {
Validatemsg = errormsg + "必须为E-mail格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "EnglishStr":
{
if (!isEnglishStr(value)) {
Validatemsg = errormsg + "必须为字符串!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "EnglishStrOrNull":
{
if (!isEnglishStrOrNull(value)) {
Validatemsg = errormsg + "必须为字符串!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "LenNum":
{
if (!isLenNum(value, $(this).attr("length"))) {
Validatemsg = errormsg + "必须为" + $(this).attr("length") + "位数字!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "LenNumOrNull":
{
if (!isLenNumOrNull(value, $(this).attr("length"))) {
Validatemsg = errormsg + "必须为" + $(this).attr("length") + "位数字!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "LenStr":
{
if (!isLenStr(value, $(this).attr("length"))) {
Validatemsg = errormsg + "必须小于" + $(this).attr("length") + "位字符!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "LenStrOrNull":
{
if (!isLenStrOrNull(value, $(this).attr("length"))) {
Validatemsg = errormsg + "必须小于" + $(this).attr("length") + "位字符!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "Phone":
{
if (!isTelephone(value)) {
Validatemsg = errormsg + "必须电话格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "PhoneOrNull":
{
if (!isTelephoneOrNull(value)) {
Validatemsg = errormsg + "必须电话格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "Fax":
{
if (!isTelephoneOrNull(value)) {
Validatemsg = errormsg + "必须为传真格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "Mobile":
{
if (!isMobile(value)) {
Validatemsg = errormsg + "必须为手机格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "MobileOrNull":
{
if (!isMobileOrnull(value)) {
Validatemsg = errormsg + "必须为手机格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "MobileOrPhone":
{
if (!isMobileOrPhone(value)) {
Validatemsg = errormsg + "必须为电话格式或手机格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "MobileOrPhoneOrNull":
{
if (!isMobileOrPhoneOrNull(value)) {
Validatemsg = errormsg + "必须为电话格式或手机格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "Uri":
{
if (!isUri(value)) {
Validatemsg = errormsg + "必须为网址格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "UriOrNull":
{
if (!isUriOrnull(value)) {
Validatemsg = errormsg + "必须为网址格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "Equal":
{
if (!isEqual(value, $(this).attr("eqvalue"))) {
Validatemsg = errormsg + "不相等!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "Date":
{
if (!isDate(value, $(this).attr("eqvalue"))) {
Validatemsg = errormsg + "必须为日期格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "DateOrNull":
{
if (!isDateOrNull(value, $(this).attr("eqvalue"))) {
Validatemsg = errormsg + "必须为日期格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "DateTime":
{
if (!isDateTime(value, $(this).attr("eqvalue"))) {
Validatemsg = errormsg + "必须为日期时间格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "DateTimeOrNull":
{
if (!isDateTimeOrNull(value, $(this).attr("eqvalue"))) {
Validatemsg = errormsg + "必须为日期时间格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "Time":
{
if (!isTime(value, $(this).attr("eqvalue"))) {
Validatemsg = errormsg + "必须为时间格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "TimeOrNull":
{
if (!isTimeOrNull(value, $(this).attr("eqvalue"))) {
Validatemsg = errormsg + "必须为时间格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "ChineseStr":
{
if (!isChinese(value, $(this).attr("eqvalue"))) {
Validatemsg = errormsg + "必须为中文!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "ChineseStrOrNull":
{
if (!isChineseOrNull(value, $(this).attr("eqvalue"))) {
Validatemsg = errormsg + "必须为中文!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "Zip":
{
if (!isZip(value, $(this).attr("eqvalue"))) {
Validatemsg = errormsg + "必须为邮编格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "ZipOrNull":
{
if (!isZipOrNull(value, $(this).attr("eqvalue"))) {
Validatemsg = errormsg + "必须为邮编格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "Double":
{
if (!isDouble(value, $(this).attr("eqvalue"))) {
Validatemsg = errormsg + "必须为小数!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "DoubleOrNull":
{
if (!isDoubleOrNull(value, $(this).attr("eqvalue"))) {
Validatemsg = errormsg + "必须为小数!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "IDCard":
{
if (!isIDCard(value, $(this).attr("eqvalue"))) {
Validatemsg = errormsg + "必须为身份证格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "IDCardOrNull":
{
if (!isIDCardOrNull(value, $(this).attr("eqvalue"))) {
Validatemsg = errormsg + "必须为身份证格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "IsIP":
{
if (!isIP(value, $(this).attr("eqvalue"))) {
Validatemsg = errormsg + "必须为IP格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
case "IPOrNull":
{
if (!isIPOrNullOrNull(value, $(this).attr("eqvalue"))) {
Validatemsg = errormsg + "必须为IP格式!\n";
Validateflag = false;
ValidationMessage($(this), Validatemsg); return false;
}
break;
}
default:
break;
}
}
});
if ($(this).find("[fieldexist=yes]").length > 0) {
return false;
}
return Validateflag;
//验证不为空 notnull
function isNotNull(obj) {
obj = $.trim(obj);
if (obj.length == 0 || obj == null || obj == undefined) {
return true;
}
else
return false;
}
//验证数字 num
function isInteger(obj) {
reg = /^[-+]?\d+$/;
if (!reg.test(obj)) {
return false;
} else {
return true;
}
}
//验证数字 num 或者null,空
function isIntegerOrNull(obj) {
var controlObj = $.trim(obj);
if (controlObj.length == 0 || controlObj == null || controlObj == undefined) {
return true;
}
reg = /^[-+]?\d+$/;
if (!reg.test(obj)) {
return false;
} else {
return true;
}
}
//Email验证 email
function isEmail(obj) {
reg = /^\w{3,}@\w+(\.\w+)+$/;
if (!reg.test(obj)) {
return false;
} else {
return true;
}
}
//Email验证 email 或者null,空
function isEmailOrNull(obj) {
var controlObj = $.trim(obj);
if (controlObj.length == 0 || controlObj == null || controlObj == undefined) {
return true;
}
reg = /^\w{3,}@\w+(\.\w+)+$/;
if (!reg.test(obj)) {
return false;
} else {
return true;
}
}
//验证只能输入英文字符串 echar
function isEnglishStr(obj) {
reg = /^[a-z,A-Z]+$/;
if (!reg.test(obj)) {
return false;
} else {
return true;
}
}
//验证只能输入英文字符串 echar 或者null,空
function isEnglishStrOrNull(obj) {
var controlObj = $.trim(obj);
if (controlObj.length == 0 || controlObj == null || controlObj == undefined) {
return true;
}
reg = /^[a-z,A-Z]+$/;
if (!reg.test(obj)) {
return false;
} else {
return true;
}
}
//验证是否是n位数字字符串编号 nnum
function isLenNum(obj, n) {
reg = /^[0-9]+$/;
obj = $.trim(obj);
if (obj.length > n)
return false;
if (!reg.test(obj)) {
return false;
} else {
return true;
}
}
//验证是否是n位数字字符串编号 nnum或者null,空
function isLenNumOrNull(obj, n) {
var controlObj = $.trim(obj);
if (controlObj.length == 0 || controlObj == null || controlObj == undefined) {
return true;
}
reg = /^[0-9]+$/;
obj = $.trim(obj);
if (obj.length > n)
return false;
if (!reg.test(obj)) {
return false;
} else {
return true;
}
}
//验证是否小于等于n位数的字符串 nchar
function isLenStr(obj, n) {
//reg = /^[A-Za-z0-9\u0391-\uFFE5]+$/;
obj = $.trim(obj);
if (obj.length == 0 || obj.length > n)
return false;
else
return true;
}
//验证是否小于等于n位数的字符串 nchar或者null,空
function isLenStrOrNull(obj, n) {
var controlObj = $.trim(obj);
if (controlObj.length == 0 || controlObj == null || controlObj == undefined) {
return true;
}
obj = $.trim(obj);
if (obj.length > n)
return false;
else
return true;
}
//验证是否电话号码 phone
function isTelephone(obj) {
reg = /^(\d{3,4}\-)?[1-9]\d{6,7}$/;
if (!reg.test(obj)) {
return false;
} else {
return true;
}
}
//验证是否电话号码 phone或者null,空
function isTelephoneOrNull(obj) {
var controlObj = $.trim(obj);
if (controlObj.length == 0 || controlObj == null || controlObj == undefined) {
return true;
}
reg = /^(\d{3,4}\-)?[1-9]\d{6,7}$/;
if (!reg.test(obj)) {
return false;
} else {
return true;
}
}
//验证是否手机号 mobile
function isMobile(obj) {
reg = /^(\+\d{2,3}\-)?\d{11}$/;
if (!reg.test(obj)) {
return false;
} else {
return true;
}
}
//验证是否手机号 mobile或者null,空
function isMobileOrnull(obj) {
var controlObj = $.trim(obj);
if (controlObj.length == 0 || controlObj == null || controlObj == undefined) {
return true;
}
reg = /^(\+\d{2,3}\-)?\d{11}$/;
if (!reg.test(obj)) {
return false;
} else {
return true;
}
}
//验证是否手机号或电话号码 mobile phone
function isMobileOrPhone(obj) {
reg_mobile = /^(\+\d{2,3}\-)?\d{11}$/;
reg_phone = /^(\d{3,4}\-)?[1-9]\d{6,7}$/;
if (!reg_mobile.test(obj) && !reg_phone.test(obj)) {
return false;
} else {
return true;
}
}
//验证是否手机号或电话号码 mobile phone或者null,空
function isMobileOrPhoneOrNull(obj) {
var controlObj = $.trim(obj);
if (controlObj.length == 0 || controlObj == null || controlObj == undefined) {
return true;
}
reg = /^(\+\d{2,3}\-)?\d{11}$/;
reg2 = /^(\d{3,4}\-)?[1-9]\d{6,7}$/;
if (!reg.test(obj) && !reg2.test(obj)) {
return false;
} else {
return true;
}
}
//验证网址 uri
function isUri(obj) {
reg = /^http:\/\/[a-zA-Z0-9]+\.[a-zA-Z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/;
if (!reg.test(obj)) {
return false;
} else {
return true;
}
}
//验证网址 uri或者null,空
function isUriOrnull(obj) {
var controlObj = $.trim(obj);
if (controlObj.length == 0 || controlObj == null || controlObj == undefined) {
return true;
}
reg = /^http:\/\/[a-zA-Z0-9]+\.[a-zA-Z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/;
if (!reg.test(obj)) {
return false;
} else {
return true;
}
}
//验证两个值是否相等 equals
function isEqual(obj1, controlObj) {
if (obj1.length != 0 && controlObj.length != 0) {
if (obj1 == controlObj)
return true;
else
return false;
}
else
return false;
}
//判断日期类型是否为YYYY-MM-DD格式的类型 date
function isDate(obj) {
if (obj.length != 0) {
reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/;
if (!reg.test(obj)) {
return false;
}
else {
return true;
}
}
}
//判断日期类型是否为YYYY-MM-DD格式的类型 date或者null,空
function isDateOrNull(obj) {
var controlObj = $.trim(obj);
if (controlObj.length == 0 || controlObj == null || controlObj == undefined) {
return true;
}
if (obj.length != 0) {
reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/;
if (!reg.test(obj)) {
return false;
}
else {
return true;
}
}
}
//判断日期类型是否为YYYY-MM-DD hh:mm:ss格式的类型 datetime
function isDateTime(obj) {
if (obj.length != 0) {
reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;
if (!reg.test(obj)) {
return false;
}
else {
return true;
}
}
}
//判断日期类型是否为YYYY-MM-DD hh:mm:ss格式的类型 datetime或者null,空
function isDateTimeOrNull(obj) {
var controlObj = $.trim(obj);
if (controlObj.length == 0 || controlObj == null || controlObj == undefined) {
return true;
}
if (obj.length != 0) {
reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;
if (!reg.test(obj)) {
return false;
}
else {
return true;
}
}
}
//判断日期类型是否为hh:mm:ss格式的类型 time
function isTime(obj) {
if (obj.length != 0) {
reg = /^((20|21|22|23|[0-1]\d)\:[0-5][0-9])(\:[0-5][0-9])?$/;
if (!reg.test(obj)) {
return false;
}
else {
return true;
}
}
}
//判断日期类型是否为hh:mm:ss格式的类型 time或者null,空
function isTimeOrNull(obj) {
var controlObj = $.trim(obj);
if (controlObj.length == 0 || controlObj == null || controlObj == undefined) {
return true;
}
if (obj.length != 0) {
reg = /^((20|21|22|23|[0-1]\d)\:[0-5][0-9])(\:[0-5][0-9])?$/;
if (!reg.test(obj)) {
return false;
}
else {
return true;
}
}
}
//判断输入的字符是否为中文 cchar
function isChinese(obj) {
if (obj.length != 0) {
reg = /^[\u0391-\uFFE5]+$/;
if (!reg.test(str)) {
return false;
}
else {
return true;
}
}
}
//判断输入的字符是否为中文 cchar或者null,空
function isChineseOrNull(obj) {
var controlObj = $.trim(obj);
if (controlObj.length == 0 || controlObj == null || controlObj == undefined) {
return true;
}
if (obj.length != 0) {
reg = /^[\u0391-\uFFE5]+$/;
if (!reg.test(str)) {
return false;
}
else {
return true;
}
}
}
//判断输入的邮编(只能为六位)是否正确 zip
function isZip(obj) {
if (obj.length != 0) {
reg = /^\d{6}$/;
if (!reg.test(str)) {
return false;
}
else {
return true;
}
}
}
//判断输入的邮编(只能为六位)是否正确 zip或者null,空
function isZipOrNull(obj) {
var controlObj = $.trim(obj);
if (controlObj.length == 0 || controlObj == null || controlObj == undefined) {
return true;
}
if (obj.length != 0) {
reg = /^\d{6}$/;
if (!reg.test(str)) {
return false;
}
else {
return true;
}
}
}
//判断输入的字符是否为双精度 double
function isDouble(obj) {
if (obj.length != 0) {
reg = /^[-\+]?\d+(\.\d+)?$/;
if (!reg.test(obj)) {
return false;
}
else {
return true;
}
}
}
//判断输入的字符是否为双精度 double或者null,空
function isDoubleOrNull(obj) {
var controlObj = $.trim(obj);
if (controlObj.length == 0 || controlObj == null || controlObj == undefined) {
return true;
}
if (obj.length != 0) {
reg = /^[-\+]?\d+(\.\d+)?$/;
if (!reg.test(obj)) {
return false;
}
else {
return true;
}
}
}
//判断是否为身份证 idcard
function isIDCard(obj) {
if (obj.length != 0) {
reg = /^\d{15}(\d{2}[A-Za-z0-9;])?$/;
if (!reg.test(obj))
return false;
else
return true;
}
}
//判断是否为身份证 idcard或者null,空
function isIDCardOrNull(obj) {
var controlObj = $.trim(obj);
if (controlObj.length == 0 || controlObj == null || controlObj == undefined) {
return true;
}
if (obj.length != 0) {
reg = /^\d{15}(\d{2}[A-Za-z0-9;])?$/;
if (!reg.test(obj))
return false;
else
return true;
}
}
//判断是否为IP地址格式
function isIP(obj) {
var re = /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/g //匹配IP地址的正则表达式
if (re.test(obj)) {
if (RegExp.$1 < 256 && RegExp.$2 < 256 && RegExp.$3 < 256 && RegExp.$4 < 256) return true;
}
return false;
}
//判断是否为IP地址格式 或者null,空
function isIPOrNull(obj) {
var controlObj = $.trim(obj);
if (controlObj.length == 0 || controlObj == null || controlObj == undefined) {
return true;
}
var re = /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/g //匹配IP地址的正则表达式
if (re.test(obj)) {
if (RegExp.$1 < 256 && RegExp.$2 < 256 && RegExp.$3 < 256 && RegExp.$4 < 256) return true;
}
return false;
}
}
//提示信息
function ValidationMessage(obj, Validatemsg) {
try {
removeMessage(obj);
obj.focus();
var $poptip_error = $('<div class="poptip"><span class="poptip-arrow poptip-arrow-top"><em>◆</em></span>' + Validatemsg + '</div>').css("left", obj.offset().left + 'px').css("top", obj.offset().top + obj.parent().height() + 5 + 'px')
$('body').append($poptip_error);
if (obj.hasClass('form-control') || obj.hasClass('ui-select')) {
obj.parent().addClass('has-error');
}
if (obj.hasClass('ui-select')) {
$('.input-error').remove();
}
obj.change(function () {
if (obj.val()) {
removeMessage(obj);
}
});
if (obj.hasClass('ui-select')) {
$(document).click(function (e) {
if (obj.attr('data-value')) {
removeMessage(obj);
}
e.stopPropagation();
});
}
return false;
} catch (e) {
alert(e)
}
}
//移除提示
function removeMessage(obj) {
obj.parent().removeClass('has-error');
$('.poptip').remove();
$('.input-error').remove();
}
//////////////////////////////分割线//////////////////////////////////
//如何使用
<script>
function aSubmit() {
if (!$('#form').Validform()) {
return false;
}
}
</script>
<div onclick="aSubmit()">提交验证</div>
<div id="form">
<table>
<tr>
<th>用户名:</th>
<td>
<input id="uname" type="text" isvalid="yes" checkexpession="NotNull" />
</td>
</tr>
<tr>
<th>余额:</th>
<td>
<input id="uname" type="text" isvalid="yes" checkexpession="Num" />
</td>
</tr>
</table>
</div>
//注解:(isvalid="yes" 是否开启验证)(checkexpession="Num" 必须为数字)
// Validform() 引用验证
jquery表单验证源码的更多相关文章
- JS表单验证源码(带错误提示及密码等级)
先晒图 index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset= ...
- jquery表单验证使用插件formValidator
JQuery表单验证使用插件formValidator 作者: 字体:[增加 减小] 类型:转载 时间:2012-11-10我要评论 jquery表单验证使用插件formValidator,可供有需求 ...
- 【jquery】Validform,一款不错的 jquery 表单验证插件
关于 Validform 这是一款很不错的 jquery 表单验证插件,它几乎能够满足任何验证需求,仅仅一行代码就能搞定整站的表单验证. $('form').Validform(); 为什么能如此方便 ...
- 【jQuery基础学习】06 jQuery表单验证插件-Validation
jQuery的基础部分前面都讲完了,那么就看插件了. 关于jQuery表单验证插件-Validation validation特点: 内置验证规则:拥有必填.数字.E-Mail.URL和信用卡号码等1 ...
- python_way day17 jQuery表单验证,事件绑定,插件,文本框架,正则表达式
python_way day17 1.jQuery表单验证 dom事件绑定 jquery事件绑定 $.each return值的判断 jquery扩展方法 2.前段插件 3.jDango文本框架 4. ...
- jQuery 表单验证插件 jQuery Validation Engine 使用
jQuery 表单验证插件 jQuery Validation Engine 使用方式如下: 1.引入头文件(注意一定要把jQuery放在前面),指定使用 jQuery Validation Engi ...
- jQuery表单验证以及将表单序列化为json对象小练习
jquery表单验证(非实时验证),同时,将表单序列化为json对象提交表单. <!DOCTYPE html> <html lang="en"> <h ...
- JQuery 表单验证--jquery validation
jquery validation,表单验证控件 官方地址 :http://jqueryvalidation.org/ jquery表单验证 默认值校验规则 jquery表单验证 默认的提示 < ...
- jquery validate强大的jquery表单验证插件
jquery validate的官方演示和文档地址: 官方网站:http://jqueryvalidation.org/ 官方演示:http://jqueryvalidation.org/files/ ...
随机推荐
- 【转载】BAT 批处理脚本教程
来源:http://www.cnblogs.com/glaivelee/archive/2009/10/07/1578737.html BAT 批处理脚本 教程 第一章 批处理基础第一节 常用批处 ...
- poj_2104: K-th Number 【主席树】
题目链接 学习了一下主席树,感觉具体算法思路不大好讲.. 大概是先建个空线段树,然后类似于递推,每一个都在前一个"历史版本"的基础上建立一个新的"历史版本",每 ...
- Spring AOP 和 动态代理技术
AOP 是什么东西 首先来说 AOP 并不是 Spring 框架的核心技术之一,AOP 全称 Aspect Orient Programming,即面向切面的编程.其要解决的问题就是在不改变源代码的情 ...
- 一个Web 持续集成工作实践
一个web的持续基础实践: https://mp.weixin.qq.com/src=3×tamp=1494325174&ver=1&signature=wFVC0E ...
- Spring定时器实现(二)
Spring结合quarzt可以实现更复杂的定时器,现做简单介绍相关配置: <?xml version="1.0" encoding="UTF-8"?&g ...
- 回味Python2.7——笔记3
一.错误和异常 1.异常处理 >>> while True: ... try: ... x = int(raw_input("Please enter a number: ...
- (转)FastJson---高性能JSON开发包
场景:javaBean对象转化为json对象! 1 Fastjson介绍 Fastjson是一个Java语言编写的JSON处理器,由阿里巴巴公司开发.1.遵循http://json.org标准,为其官 ...
- Android源码博文集锦4
Android精选源码 一款常见的自定义加载动画 android开源记账项目CoCoin Android自定义view:拖拽选择按钮 Android指纹识别 一个折线图,它提供了几个非常实用的功能 一 ...
- c#中Class和Struct使用与性能的区别
在Unity中很多已经定义为结构体的数据结构 Vector2, Vector3 和 Vector4 Rect Color和Color32 Bounds Touch 1.Class为引用类型,Str ...
- WinFrom通过委托传递事件
今天一个功能需要动态创建pictruebox然后根据时间来倒叙显示,一开始对于这个需求摸不着头脑,后来在公司的大神帮助下实现了,话不多说具体实现上代码了: 1.动态添加控件并倒叙 首先添加一个用户控件 ...