封装模板
来源:互联网 发布:网络上消费者投诉电话 编辑:程序博客网 时间:2024/05/22 14:56
/** * Created by Eden on 2017/4/15. */var Common = { temp: { mask: '<div class="mask divMask"></div>', formAlert: '<div class="poup divPoup"><div class="poup-alert tran">{{msg}}</div></div>', loading: '<div class="pageLoading"><img src="Content/images/loading.gif"></div>' }, data: { role: ["require", "email", "idcard", "mobile"], formAlertTime: null }, showFormAlert: function (bool, msg) { $(".divPoup").remove(); if (Common.data.formAlertTime) { window.clearInterval(Common.data.formAlertTime); Common.data.formAlertTime = null; } if (bool) { $("body").append(Mustache.to_html(Common.temp.formAlert, {msg: msg})); Common.data.formAlertTime = setTimeout(function () { Common.showFormAlert(false); }, 2000); } }, formatDate: function (time, fmt) { var o = { "M+": time.getMonth() + 1, //月份 "d+": time.getDate(), //日 "h+": time.getHours(), //小时 "m+": time.getMinutes(), //分 "s+": time.getSeconds(), //秒 "q+": Math.floor((time.getMonth() + 3) / 3), //季度 "S": time.getMilliseconds() //毫秒 }; if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (time.getFullYear() + "").substr(4 - RegExp.$1.length)); for (var k in o) if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length))); return fmt; }, getDaybyUnit: function (str) { var day = 1; switch (str) { case "年": day = 365; break; case "季": day = 90; break; case "月": day = 30; break; case "日": day = 1; break; } return day; }, getTypebyUnit: function (str) { var type = 'days'; switch (str) { case "年": type = 'years'; break; case "季": type = 'quarters'; break; case "月": type = 'months'; break; case "日": type = 'days'; break; } return type; }, showMask: function (bool, func) { if (bool) { $("body").append(Common.temp.mask); func && $(".divMask").click(function () { $(".divMask").remove(), func(); }) } else $(".divMask").remove(); }, serviceMask: function(bool,func) { if (bool) { $("body").append(Common.temp.mask); func && $(".divMask").on('click touchstart', function () { $(".divMask").remove(), func(); }) } else $(".divMask").remove(); }, checkMobile: function (obj) { if (/^1(3|4|5|7|8)\d{9}$/.test(obj)) return true; else return false; }, checkIdcard: function (code) { var city = { 11: "北京", 12: "天津", 13: "河北", 14: "山西", 15: "内蒙古", 21: "辽宁", 22: "吉林", 23: "黑龙江 ", 31: "上海", 32: "江苏", 33: "浙江", 34: "安徽", 35: "福建", 36: "江西", 37: "山东", 41: "河南", 42: "湖北 ", 43: "湖南", 44: "广东", 45: "广西", 46: "海南", 50: "重庆", 51: "四川", 52: "贵州", 53: "云南", 54: "西藏 ", 61: "陕西", 62: "甘肃", 63: "青海", 64: "宁夏", 65: "新疆", 71: "台湾", 81: "香港", 82: "澳门", 91: "国外 " }; var tip = ""; var pass = true; var isNumber = /^[0-9]+.?[0-9]*$/; if(code.length >0 && !isNumber.test(code.substr(-1))){ var lastCode = (code.substr(-1)).toUpperCase(); if(code.length == 15){ code = code.substr(0,14); code += lastCode; }else if(code.length == 18){ code = code.substr(0,17); code += lastCode; } } if (!code || !/^(\d{15}$|^\d{18}$|^\d{17}(\d|X|x))$/.test(code)) { tip = "身份证号格式错误"; pass = false; } else if (!city[code.substr(0, 2)]) { tip = "地址编码错误"; pass = false; } else { //18位身份证需要验证最后一位校验位 if (code.length == 18) { code = code.split(''); //∑(ai×Wi)(mod 11) //加权因子 var factor = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2]; //校验位 var parity = [1, 0, 'X', 9, 8, 7, 6, 5, 4, 3, 2]; var sum = 0; var ai = 0; var wi = 0; for (var i = 0; i < 17; i++) { ai = code[i]; wi = factor[i]; sum += ai * wi; } var last = parity[sum % 11]; if (parity[sum % 11] != code[17]) { tip = "校验位错误"; pass = false; } } } return pass; }, getQueryString: function (name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if (r != null) return unescape(r[2]); return null; }, request: function (url, data, call, type) { return $.ajax({ url: CONFIG.BASEURL + url, data: JSON.stringify(data), type: type ? type : "post", dataType: "json", contentType: "multipart/form-data", success: function (data) { call && call(data); } }) }, otherRequest: function (url, data, call, type) { return $.ajax({ url: url, data: JSON.stringify(data), type: type ? type : 'post', dateType: 'json', contentType: "application/json", success: function (data) { call && call(data); } }) }, addNum: function (num1, num2) { var baseNum, baseNum1, baseNum2; try { baseNum1 = num1.toString().split(".")[1].length; } catch (e) { baseNum1 = 0; } try { baseNum2 = num2.toString().split(".")[1].length; } catch (e) { baseNum2 = 0; } baseNum = Math.pow(10, Math.max(baseNum1, baseNum2)); return (num1 * baseNum + num2 * baseNum) / baseNum; }, subNum: function (num1, num2) { var baseNum, baseNum1, baseNum2; var precision;// 精度 try { baseNum1 = num1.toString().split(".")[1].length; } catch (e) { baseNum1 = 0; } try { baseNum2 = num2.toString().split(".")[1].length; } catch (e) { baseNum2 = 0; } baseNum = Math.pow(10, Math.max(baseNum1, baseNum2)); precision = (baseNum1 >= baseNum2) ? baseNum1 : baseNum2; return ((num1 * baseNum - num2 * baseNum) / baseNum).toFixed(precision); }, addCookie: function (name, val, time) { var str = name + "=" + escape(val); if (time > 0) { var date = new Date(); var ms = time * 3600 * 1000; date.setTime(date.getTime() + ms); str += "; expires=" + date.toGMTString(); } document.cookie = str; }, getCookie: function (name) { var arrStr = document.cookie.split("; "); for (var i = 0; i < arrStr.length; i++) { var temp = arrStr[i].split("="); if (temp[0] == name) { return unescape(temp[1]); } } }, delCookie: function (name) { var date = new Date(); date.setTime(date.getTime() - 10000); document.cookie = name + "=a; expires=" + date.toGMTString(); }, setTreeNode: function (areaList) { if (areaList.length > 0) { var treeData = areaList.map(function (s) { if (s.childAreaVoList.length > 0) { return { text: s.areaName, id: s.areaId.toString(), nodes: Common.setTreeNode(s.childAreaVoList) } } else { return { text: s.areaName, id: s.areaId.toString(), } } }); return treeData; } else return []; },};
阅读全文
0 0
- 封装模板
- CList封装模板类
- 模板分页封装
- 模板分页封装
- jdbcBaseDao封装模板
- 控件封装模板
- [模板]高精度封装运算
- 页面模板的标记封装
- 用C++模板封装线程
- 模板方法模式--封装算法
- Action层代码封装模板
- 模板方法模式--封装算法
- jquery函数封装、继承模板
- 高精度模板 c++/类封装
- OC单例 模板封装
- 自己封装mybatis模板生成
- 封装ajax访问通用模板
- android 之OkHttp封装模板
- Java 操作Oracle数据库
- Apache的Order Allow,Deny 详解
- 使用c++语言写个hello world
- P1156 垃圾陷阱
- Idea(Mac) 安装 PlantUML
- 封装模板
- 达人篇:1)简单易懂的质量管理-写在达人篇开篇
- 【区块链】TestRPC Runtime Error: out of gas
- hadoop中NameNode、DataNode、Secondary、NameNode、JobTracker TaskTracker介绍
- Qt下使用微软的TTS
- 二叉树的遍历
- 考研数学
- 按钮防抖(防止重复点击)
- MT 110 Advice of Cheque(s)通知支票情况