js常用验证
var git = { //true表示格式正确 checkEmail: function (str) { if (str.match(/[A-Za-z0-9_-]+[@](\S*)(net|com|cn|org|cc|tv|[0-9]{1,3})(\S*)/g) == null) { return false; } else { return true; } }, //true表示格式正确 checkMobilePhone: function (str) { if (str.match(/^(?:13\d|15[0-9]|18[0123456789])-?\d{5}(\d{3}|\*{3})$/) == null) { return false; } else { return true; } }, //true表示为数字 checkNum: function (str) { if (str.match(/\D/) == null) { return false; } else { return true; } }, //true表示为小数 checkDecimal: function (str) { if (str.match(/^-?\d+(\.\d+)?$/g) == null) { return false; } else { return true; } }, //true表示为小数 checkInteger: function (str) { if (str.match(/^[-+]?\d*$/) == null) { return false; } else { return true; } }, //true表示为全部为字符 不包含汉字 checkStr: function (str) { if (/[^\x00-\xff]/g.test(str)) { return false; } else { return true; } }, //true表示包含汉字 checkChinese: function (str) { if (escape(str).indexOf("%u") != -1) { return true; } else { return false; } }, //true表示格式正确 checkTelephone: function (str) { if (str.match(/^(([0\+]\d{2,3}-)?(0\d{2,3})-)(\d{7,8})(-(\d{3,}))?$/) == null) { return false; } else { return true; } }, //true表示格式正确 检查输入的身份证号是否正确 checkCard: function (str) { //15位数身份证正则表达式 var arg1 = /^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/; //18位数身份证正则表达式 var arg2 = /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[A-Z])$/; if (str.match(arg1) == null && str.match(arg2) == null) { return false; } else { return true; } }, //检查输入的IP地址是否正确 true表示格式正确 checkIP: function (str) { var arg = /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/; if (str.match(arg) == null) { return false; } else { return true; } }, //检查输入的URL地址是否正确 true表示格式正确 checkURL: function (str) { //if (str.match(/(http[s]?|ftp):\/\/[^\/\.]+?\..+\w$/i) == null) { if (str.match(/(http[s]?|ftp):\/\/([\w-]+\.)+[\w-]+(\/[\w- .\/?%&=]*)?/) == null) { return false } else { return true; } }, //检查字符串是否为空 IsEmpty: function (str) { if (str == undefined || str == "") { return true; } else { return false; } }, //域名验证 IsURL: function (URL) { var str = URL; var Expression = /http(s)?:\/\/([\w-]+\.)+[\w-]+(\/[\w- .\/?%&=]*)?/; var objExp = new RegExp(Expression); if (objExp.test(str) == true) { return true; } else { return false; } }, //true只有数字和字母和下划线 IsNumOrLet: function (parVal) { if (parVal.match(/[^a-zA-Z0-9_]+/)) { return true; } else { return false; } }, //验证Money,true表示正确 checkMoney: function (str) { if (str.match(/^[0-9][\d]{0,11}([\.][\d]{0,4})?$/)) { return true; } else { return false; } }, //true表示开始时间大于或等于结束时间 CompareTime: function (stime, etime) { var starttimes = stime.split('-'); var endtimes = etime.split('-'); var starttimeTemp = starttimes[0] + '/' + starttimes[1] + '/' + starttimes[2]; var endtimesTemp = endtimes[0] + '/' + endtimes[1] + '/' + endtimes[2]; if (Date.parse(new Date(starttimeTemp)) > Date.parse(new Date(endtimesTemp)) || Date.parse(new Date(starttimeTemp)) == Date.parse(new Date(endtimesTemp))) { return true; } }, //true表示开始时间大于或等于结束时间,只有年月日 checkCompareTime: function (stime, etime) { var starttimes = stime.split('-'); var endtimes = etime.split('-'); var starttimeTemp = starttimes[0] + '/' + starttimes[1] + '/' + starttimes[2]; var endtimesTemp = endtimes[0] + '/' + endtimes[1] + '/' + endtimes[2]; if (Date.parse(new Date(starttimeTemp)) > Date.parse(new Date(endtimesTemp))) { return true; } }, Escape: function (value) { if (value != undefined) { return escape(value); } return undefined; }, UnEscape: function (value) { if (value != undefined) { return unescape(value); } return undefined; }, //.net Json后的日期转换 JsonToDateTime: function (jsonDate) { if (jsonDate == undefined || jsonDate.length <= 0) return jsonDate; var date = new Date(parseInt(jsonDate.substr(6))).format("yyyy-MM-dd HH:mm:ss"); return date; }, //.net Json后的日期转换 只有年月日 JsonToDateTimeymd: function (jsonDate) { if (jsonDate == undefined || jsonDate.length <= 0) return jsonDate; var date = new Date(parseInt(jsonDate.substr(6))).format("yyyy-MM-dd"); return date; }, //获得访问的路径/Home/Index GetPath: function () { return window.location.pathname; }, //获得 GetUrl: function () { return window.location.href; }, //获得访问协议 http https GetProtocol: function () { return window.location.protocol; }, //获取域名 GetDomain: function () { return document.domain; }, //获得端口 GetPort: function () { return window.location.port; }, GetArgs: function () { var args = {}; var query = location.search.substring(1); var pairs = query.split("&"); for (var i = 0; i < pairs.length; i++) { var pos = pairs[i].indexOf('='); if (pos == -1) { continue; } else { var argname = pairs[i].substring(0, pos); var value = pairs[i].substring(pos + 1); value = decodeURIComponent(value); args[argname] = value; } } return args; }, Trim: function (value) { if (value == undefined || value == "") { return value; } value = value.replace(/[ ]/g, ""); return value; }, LTrim: function (value) { if (value == undefined || value == "") { return value; } value = value.replace(/(^\s*)/g, ""); return value; }, RTrim: function (value) { if (value == undefined || value == "") { return value; } value = value.replace(/(\s*$)/g, ""); return value; }, ToDecimal: function (x, y) { var f_x = parseFloat(x); if (isNaN(f_x)) { return false; } var f_x = Math.round(x * 100000) / 100000; var s_x = f_x.toString(); var pos_decimal = s_x.indexOf('.'); if (pos_decimal < 0) { pos_decimal = s_x.length; s_x += '.'; } while (s_x.length <= pos_decimal + y) { s_x += '0'; } return s_x; }, GetEnumDesc: function (item, value) { if (item != undefined) { var returnValue = ""; for (var i = 0; i < item.length; i++) { var json = item[i]; if (json.Value == value) { returnValue = json.Description; break; } } return returnValue; } return ""; }, //截取字符串 GetStrSub: function (str,lth) { var resultStr = ""; if (str == undefined || str == "") { resultStr = ""; } else { if (str.length > lth) { resultStr = str.substring(0, lth) + '...'; } else { resultStr = str; } } return resultStr; } };