helper.js(20170210)
/// <reference path="../Lib/jquery-3.0.0.min.js" /> //***************************************/公共参数辅助对象***************************************/ //公共参数辅助对象 var ObjParameter = { //获取url参数值 //注意:参数值最好不用中文,会有编码问题 //name:参数名称 getQueryString: function (name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); var r = window.location.search.substr(1).match(reg); if (r != null) return unescape(r[2]); return null; }, //decodeURI转码过的,主要防止中文乱码 //获取url参数值 //注意:参数值最好不用中文,会有编码问题 //name:参数名称 getQueryStringDecodeURI: function (name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); var r = decodeURI(window.location.search).substr(1).match(reg); if (r != null) return unescape(r[2]); return null; } }; var dateObj; //日期时间辅助方法 var objDate = { //获取当前日期:格式 2016-11-15 //Separate分隔符 默认"-" GetCurrentDate: function (Separate) { dateObj = new Date(); if (!objValidate.NotNull(Separate)) { Separate = "-"; } var _Year = dateObj.getFullYear(); var _Month = (dateObj.getMonth() + 1); var _Date = dateObj.getDate(); if (_Month < 10) { _Month = "0" + _Month; } if (_Date < 10) { _Date = "0" + _Date; } var result = _Year + Separate + _Month + Separate + _Date; return result; }, //获取当前时间:格式 17:36:12 //IsSeconds是否精确到秒,1是,0否,默认不需要秒 GetCurrentTime: function (IsSeconds) { dateObj = new Date(); var result = dateObj.getHours() + ":" + dateObj.getMinutes() if (IsSeconds == 1) { result += ":" + dateObj.getSeconds(); } return result; }, //获取当前日期与时间:格式 2016-11-15 17:47:27 //Separate日期分隔符 默认"-" //IsSeconds是否精确到秒,1是,0否,默认不需要秒 GetCurrentDateTime: function (Separate, IsSeconds) { var result = objDate.GetCurrentDate(Separate) + " " + objDate.GetCurrentTime(IsSeconds); return result; }, ///获取指定年月的天数 //year:年份 //month:月份 GetMonthDays: function (year, month) { var day = new Date(year, month, 0); //获取天数: var daycount = day.getDate(); return daycount; }, //日期加减天数 //datestr:要运算的时间,默认当前日期 //type:运算类型 ("+" or "-"),默认 + //separate:时间分隔符 ("-" or "/" ),默认 - //numberDays:天数,默认 1 //返回加减后的日期 DateOperation: function (datestr, type, separate, numberDays) { datestr = objValidate.NotNull(datestr) ? datestr : objDate.GetCurrentDate(); type = objValidate.NotNull(type) ? type : "+"; separate = objValidate.NotNull(separate) ? separate : "-"; numberDays = objValidate.NotNull(numberDays) ? numberDays : 1; if (numberDays == 0) { var date = new Date(datestr); var myyear = date.getFullYear(); var mymonth = date.getMonth() + 1; var myweekday = date.getDate(); return (myyear + separate + mymonth + separate + myweekday); } for (var i = 0; i < numberDays; i++) { var date = new Date(datestr); var myyear = date.getFullYear(); var mymonth = date.getMonth() + 1; var myweekday = date.getDate(); //var myhours = date.getHours(); //var myminutes = date.getMinutes(); if (type == "+") { myweekday = myweekday + 1; //超过当月所有天数就加一个月(进入下一月) if (objDate.GetMonthDays(myyear, mymonth) < myweekday) { mymonth = mymonth + 1; myweekday = 1; //超过12月就加一年(进入下一年) if (mymonth > 12) { myyear = myyear + 1; mymonth = 1; myweekday = 1; } } } if (type == "-") { myweekday = myweekday - 1; //低于1号就减一个月(进入上一月) if (1 > myweekday) { mymonth = mymonth - 1; myweekday = objDate.GetMonthDays(myyear, mymonth); //低于1月就减一年(进入上一年) if (mymonth < 1) { myyear = myyear - 1; mymonth = 12; myweekday = objDate.GetMonthDays(myyear, mymonth); } } } if (mymonth < 10) { mymonth = "0" + mymonth; } if (myweekday < 10) { myweekday = "0" + myweekday; } datestr = myyear + separate + mymonth + separate + myweekday; } return (myyear + separate + mymonth + separate + myweekday); }, //时间转换字符 //datetime要转换的时间字符串 默认为:0000/00/00 //separate 分隔符2009-06-12或2009/06/12 ("/","-") 默认 "-" //length长度2009-06-12(10)或2009-06-12 17:18(15)或2009-06-12 17:18:05(18) 默认10 //空时间返回0000/00/00 或者 0000-00-00 DateToStr: function (datetime, separate, length) { separate = objValidate.NotNull(separate) ? separate : "-"; length = objValidate.NotNull(length) ? length : 10; if (!objValidate.NotNull(datetime)) { return "0000" + separate + "00" + separate + "00"; } var datetime = new Date(datetime); var year = datetime.getFullYear(); var month = datetime.getMonth() + 1;//js从0开始取 var date = datetime.getDate(); var hour = datetime.getHours(); var minutes = datetime.getMinutes(); var second = datetime.getSeconds(); if (month < 10) { month = "0" + month; } if (date < 10) { date = "0" + date; } if (hour < 10) { hour = "0" + hour; } if (minutes < 10) { minutes = "0" + minutes; } if (second < 10) { second = "0" + second; } var time = year + "-" + month + "-" + date + " " + hour + ":" + minutes + ":" + second; if (length == 10) { time = year + separate + month + separate + date; } if (length == 15) { time = year + separate + month + separate + date + " " + hour + ":" + minutes; } if (length == 18) { time = year + separate + month + separate + date + " " + hour + ":" + minutes + ":" + second; } //2009-06-12 17:18:05 return time; } }; //***************************************/公共验证辅助对象***************************************/ //公共验证辅助对象 var objValidate = { //是否为登录状态 //返回true则已登录 false则未登录 IsLogin: function () { return objValidate.NotNull(objsessionStorage.GetUserInfo()); }, //手机号码验证 //返回true or false IsMobilePhone: function (val) { val = val.ResetBlank().trim(); var reg = /^0?1[2|3|4|5|6|7|8|9][0-9]\d{8}$/; if (reg.test(val)) { return true; } else { return false; }; }, //固定电话号码验证 //返回true or false IsTelephone: function (val) { val = val.ResetBlank().trim(); var reg = /^(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}$/; if (reg.test(val)) { return true; } else { return false; }; }, //非空验证,"",null,undefined //空则返回 false 非空返回 true NotNull: function (val) { if (typeof (val) == "string") { val = val.trim(); } if (val === "" || val === "null" || val === "undefined" || val === null || val === undefined) { return false; } return true; }, //邮箱验证 //str:邮箱 emailCheck: function (str) { var reg = /^([\.a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/; return reg.test(str); }, //是否为纯汉字 //返回bool IsChinese: function (val) { var myReg = /^[\u4e00-\u9fa5]+$/; if (myReg.test(val)) { return true; } else { return false; } }, //验证中文姓名 //必须为纯中文 //长度必须在2-5之间 IsNamezhGeShi: function (val) { val = val.trim(); if (!objValidate.IsChinese(val) || val.length > 5 || val.length < 2) { return false; } else { return true; } }, //身份证验证 //card:身份证号码 //返回:1 请输入身份证号,身份证号不能为空 //返回:2 您输入的身份证号码不正确,请重新输入 //返回:3 您输入的身份证号码不正确,请重新输入 //返回:4 您输入的身份证号码生日不正确,请重新输入 //返回:5 您的身份证校验位不正确,请重新输入 //返回:0 验证通过 checkIDCard: function (card) { //是否为空 if (!objValidate.NotNull(card)) { //alert('请输入身份证号,身份证号不能为空'); //document.getElementById('card_no').focus; return 1; } //校验长度,类型 if (isCardNo(card) === false) { //alert('您输入的身份证号码不正确,请重新输入'); return 2; } //检查省份 if (checkProvince(card) === false) { //alert('您输入的身份证号码不正确,请重新输入'); return 3; } //校验生日 if (checkBirthday(card) === false) { //alert('您输入的身份证号码生日不正确,请重新输入'); return 4; } //检验位的检测 if (checkParity(card) === false) { //alert('您的身份证校验位不正确,请重新输入'); return 5; } return 0; }, ///是否为纯数字 isDigital: function (val) { var reg = new RegExp("^[0-9]*$"); return reg.test(val); }, ///只能输入字母与数字 isLettersOrNumber: function (val) { var reg = new RegExp("^[A-Za-z0-9]*$"); return reg.test(val); }, //用户名验证,只可以用字母数字下划线做用户名,必须是字母开头,6-16字 ValiUser: function (Name) { var patrn = /^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){5,15}$/; if (!patrn.exec(Name)) return false return true }, //验证对象是否为json对象 //obj:要验证的对象 //是json对象则返回true 否则返回false isJsonObj: function (obj) { var isjson = typeof (obj) == "object" && Object.prototype.toString.call(obj).toLowerCase() == "[object object]" && !obj.length; return isjson; }, //验证字符是否为json格式 //str:要验证的字符串 //是json格式则返回true 否则返回false isJsonStr: function (str) { try { if (!objValidate.NotNull(str)) { return false; } if (typeof (str) == "number" || objValidate.isDigital(str)) { return false; } if (typeof (str) == "number") { return false; } $.parseJSON(str); return true; } catch (e) { return false; } }, }; //***************************************/身份证验证所用到方法***************************************/ var vcity = { 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: "国外" }; //检查号码是否符合规范,包括长度,类型 isCardNo = function (card) { //身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X var reg = /(^\d{15}$)|(^\d{17}(\d|X)$)/; if (reg.test(card) === false) { return false; } return true; }; //取身份证前两位,校验省份 checkProvince = function (card) { var province = card.substr(0, 2); if (vcity[province] == undefined) { return false; } return true; }; //检查生日是否正确 checkBirthday = function (card) { var len = card.length; //身份证15位时,次序为省(3位)市(3位)年(2位)月(2位)日(2位)校验位(3位),皆为数字 if (len == '15') { var re_fifteen = /^(\d{6})(\d{2})(\d{2})(\d{2})(\d{3})$/; var arr_data = card.match(re_fifteen); var year = arr_data[2]; var month = arr_data[3]; var day = arr_data[4]; var birthday = new Date('19' + year + '/' + month + '/' + day); return verifyBirthday('19' + year, month, day, birthday); } //身份证18位时,次序为省(3位)市(3位)年(4位)月(2位)日(2位)校验位(4位),校验位末尾可能为X if (len == '18') { var re_eighteen = /^(\d{6})(\d{4})(\d{2})(\d{2})(\d{3})([0-9]|X)$/; var arr_data = card.match(re_eighteen); var year = arr_data[2]; var month = arr_data[3]; var day = arr_data[4]; var birthday = new Date(year + '/' + month + '/' + day); return verifyBirthday(year, month, day, birthday); } return false; }; //校验日期 verifyBirthday = function (year, month, day, birthday) { var now = new Date(); var now_year = now.getFullYear(); //年月日是否合理 if (birthday.getFullYear() == year && (birthday.getMonth() + 1) == month && birthday.getDate() == day) { //判断年份的范围(3岁到100岁之间) var time = now_year - year; if (time >= 3 && time <= 100) { return true; } return false; } return false; }; //校验位的检测 checkParity = function (card) { //15位转18位 card = changeFivteenToEighteen(card); var len = card.length; if (len == '18') { var arrInt = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2); var arrCh = new Array('1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'); var cardTemp = 0, i, valnum; for (i = 0; i < 17; i++) { cardTemp += card.substr(i, 1) * arrInt[i]; } valnum = arrCh[cardTemp % 11]; if (valnum == card.substr(17, 1)) { return true; } return false; } return false; }; //15位转18位身份证号 changeFivteenToEighteen = function (card) { if (card.length == '15') { var arrInt = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2); var arrCh = new Array('1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'); var cardTemp = 0, i; card = card.substr(0, 6) + '19' + card.substr(6, card.length - 6); for (i = 0; i < 17; i++) { cardTemp += card.substr(i, 1) * arrInt[i]; } card += arrCh[cardTemp % 11]; return card; } return card; }; //***************************************/扩展方法***************************************/ //清除字符串所有空白 String.prototype.ResetBlank = function () { var regEx = /\s+/g; return this.replace(regEx, ''); } //***************************************公共常用辅助对象***************************************/ var objCommon = { //获取学年 //SchoolYearID:学年id GetSchoolYear: function (SchoolYearID) { var SchoolYear; switch (SchoolYearID) { case 1: SchoolYear = "一学年"; break; case 2: SchoolYear = "二学年"; break; case 3: SchoolYear = "三学年"; break; default: SchoolYear = "未知"; break; } return SchoolYear; }, //获取学期 //SemesterID:学期id GetSemester: function (SemesterID) { var Semester; switch (SemesterID) { case 1: Semester = "上学期"; break; case 2: Semester = "下学期"; break; default: Semester = "未知"; break; } return Semester; }, //验证登录状态并登录超时提示 //登录超时返回 false 正常则返回 true LoginAlert: function () { if (!objValidate.IsLogin()) { objPopupMsg.Alert("登录超时!", "LoginOvertime"); return false; } return true; } }; //***************************************父页面操作***************************************/ //父页面辅助对象 var objParent = { //设置框架高度 //iframe:框架id setIframeHeight:function (iframe) { if (iframe) { var iframeWin = iframe.contentWindow || iframe.contentDocument.parentWindow; if (iframeWin.document.body) { iframe.height = iframeWin.document.documentElement.scrollHeight || iframeWin.document.body.scrollHeight; } } }, //子页面设置父页面框架高度 setParentIframeHeight: function () { objParent.setIframeHeight(parent.document.getElementById('right-frame')); }, //子页面调用父页面的overhangShow方法,弹出消息提示方法。 //_type消息类型:0、error(错误消息)1、success(成功消息)2、info(信息消息)3、warn(警告消息)默认为成功消息 //_message消息内容 overhangShow: function (_type, _message) { if (!objValidate.NotNull(_message)) { _message = "请填写消息内容!"; } switch (_type) { case 0: window.parent.overhangShow("error", _message); break; case 1: window.parent.overhangShow("success", _message); break; case 2: window.parent.overhangShow("info", _message); break; case 3: window.parent.overhangShow("warn", _message); break; default: window.parent.overhangShow("success", _message); break; } } }; //***************************************ajax请求返回jsonMsg方法***************************************/ ///ajax返回消息辅助对象 var objMsg = { ///消息代码转换消息实意 //msgCode:消息代码(result) //IsmachiningMsg:是否返回美化后的消息(0:不用美化,1:用美化版本1) ///return 返回消息实际意义 getChineseMsg: function (msgCode, IsmachiningMsg) { var resulr; if (IsmachiningMsg == 0) { switch (msgCode) { case 0: resulr = "成功"; break; case -1: resulr = "错误"; break; case -2: resulr = "系统错误"; break; case -3: resulr = "系统异常"; break; case -21: resulr = "网络不可用"; break; case -22: resulr = "网络忙"; break; case -41: resulr = "数据库错误"; break; case -99: resulr = "系统正在维护"; break; case -301: resulr = "用户名或密码错"; break; case -302: resulr = "用户角色错误"; break; case -321: resulr = "注册失败"; break; case -322: resulr = "用户账号已注册,是否跳转到登录?"; break; case -323: resulr = "用户账号未注册"; break; case -324: resulr = "手机号已注册,是否跳转到登录?"; break; case -325: resulr = "邮箱已注册,是否跳转到登录?"; break; case -341: resulr = "修改密码失败"; break; case -342: resulr = "旧密码错误"; break; case -351: resulr = "找回密码失败"; break; case -352: resulr = "密码提示问题答案错误"; break; case -362: resulr = "用户不存在"; break; case -363: resulr = "禁止访问"; break; case -366: resulr = "更新用户信息失败"; break; case -371: resulr = "密码太短"; break; case -372: resulr = "密码太长"; break; case -521: resulr = "实验不存在"; break; case -531: resulr = "删除实验失败"; break; case -551: resulr = "添加实验失败"; break; case -561: resulr = "更新实验失败"; break; case -711: resulr = "实验安排不存在"; break; case -721: resulr = "删除实验安排失败"; break; case -741: resulr = "添加实验安排失败"; break; case -761: resulr = "修改实验安排失败"; break; case -771: resulr = "添加实验者失败"; break; case -773: resulr = "实验名单已在花名册中(并有效)"; break; case -774: resulr = "实验名单已在花名册中但被限制"; break; case -775: resulr = "实验名单不在花名册中"; break; case -781: resulr = "删除实验者失败"; break; case -785: resulr = "要求有效的考卷ID"; break; case -905: resulr = "无课程表项"; break; case -908: resulr = "删除课程表项失败"; break; case -911: resulr = "添加课程表项失败"; break; case -915: resulr = "修改课程表项失败"; break; case -931: resulr = "无考勤记录"; break; case -935: resulr = "修改考勤失败"; break; case -941: resulr = "无成绩记录"; break; case -945: resulr = "提交/修改答案失败"; break; case -946: resulr = "提交/修改成绩失败"; break; case -951: resulr = "无考卷"; break; case -956: resulr = "添加考卷失败"; break; case -961: resulr = "修改考卷失败"; break; case -966: resulr = "删除考卷失败"; break; case -971: resulr = "无考题"; break; case -976: resulr = "添加考题失败"; break; case -981: resulr = "修改考题失败"; break; case -986: resulr = "删除考题失败"; break; case -1011: resulr = "问题不存在/无记录"; break; case -1016: resulr = "添加问题失败"; break; case -1016: resulr = "添加问题失败"; break; case -1021: resulr = "修改问题失败"; break; case -1026: resulr = "删除问题失败"; break; case -1051: resulr = "问题解答不存在/无记录"; break; case -1056: resulr = "添加问题解答失败"; break; case -1061: resulr = "修改问题解答失败"; break; case -1066: resulr = "删除问题解答失败"; break; default: resulr = "未知错误"; break; } return resulr; } if (IsmachiningMsg == 1) { switch (msgCode) { case 0: resulr = "操作成功!"; break; case -1: resulr = "操作失败!"; break; case -2: resulr = "系统错误,请刷新重试或联系客服!"; break; case -3: resulr = "系统异常,请刷新重试或联系客服!"; break; case -21: resulr = "网络不可用,请检查网络!"; break; case -22: resulr = "网络繁忙,请稍后重试!"; break; case -41: resulr = "数据库错误,请刷新重试或联系客服!"; break; case -99: resulr = "抱歉,系统正在维护中,请稍后重试或联系客服!"; break; case -301: resulr = "用户名或密码错,请确认!"; break; case -302: resulr = "用户角色错误,请确认!"; break; case -321: resulr = "注册失败,请检查输入数据是否有误!"; break; case -322: resulr = "该用户账号已经注册,请确认!"; break; case -323: resulr = "用户账号未注册,请先注册!"; break; case -324: resulr = "手机号已经注册,请确认"; break; case -325: resulr = "邮箱已注册,请确认!"; break; case -341: resulr = "修改密码失败,请刷新重试!"; break; case -342: resulr = "旧密码错误,请确认!"; break; case -351: resulr = "找回密码失败,请确认原密码或密码答案是否正确!"; break; case -352: resulr = "密码提示问题答案错误,请确认!"; break; case -362: resulr = "用户不存在,请重新输入用户名!"; break; case -363: resulr = "禁止访问,请联系客服!"; break; default: resulr = "未知错误"; break; } return resulr; } } }; //***************************************sessionStorage数据***************************************/ //sessionStorage操作对象 //仅在当前会话下有效,关闭页面或浏览器后被清除 var objsessionStorage = { //清除所有信息 clear: function () { sessionStorage.clear(); }, //设置用户信息 SetUserInfo: function (dataStr) { sessionStorage.setItem("userinfo", dataStr); }, //获取用户信息 GetUserInfo: function () { return sessionStorage.getItem("userinfo"); }, //删除用户信息 RemoveUserInfo: function () { sessionStorage.removeItem("userinfo"); }, }; //***************************************localStorage数据***************************************/ //localStorage本地数据操作辅助方法 //localStorage对象不手动清空数据会一直存在,敏感数据慎用。 var objlocalStorage = { //清除所有信息 clear: function () { localStorage.clear(); }, //设置用户信息 SetUserInfo: function (dataStr) { localStorage.setItem("userinfo", dataStr); }, //获取用户信息 GetUserInfo: function () { return localStorage.getItem("userinfo"); }, //删除用户信息 RemoveUserInfo: function () { localStorage.removeItem("userinfo"); }, //设置课程信息 SetCourseType: function (dataStr) { localStorage.setItem("CourseType", dataStr); }, //获取课程信息 GetCourseType: function () { return localStorage.getItem("CourseType"); }, //删除课程信息 RemoveCourseType: function () { localStorage.removeItem("CourseType"); }, //设置实验名信息 SetExperimenterName: function (dataStr) { localStorage.setItem("ExperimenterName", dataStr); }, //获取实验名信息 GetExperimenterName: function () { return localStorage.getItem("ExperimenterName"); }, //删除实验名信息 RemoveExperimenterName: function () { localStorage.removeItem("ExperimenterName"); }, //设置班级信息 SetClass: function (dataStr) { localStorage.setItem("Class", dataStr); }, //获取班级信息 GetClass: function () { return localStorage.getItem("Class"); }, //删除班级信息 RemoveClass: function () { localStorage.removeItem("Class"); }, //设置专业信息 SetMajor: function (dataStr) { localStorage.setItem("Major", dataStr); }, //获取专业信息 GetMajor: function () { return localStorage.getItem("Major"); }, //删除专业信息 RemoveMajor: function () { localStorage.removeItem("Major"); }, //设置问题标签 SetQuestionTag: function (dataStr) { localStorage.setItem("QuestionTag", dataStr); }, //获取问题标签 GetQuestionTag: function () { return localStorage.getItem("QuestionTag"); }, //删除问题标签 RemoveQuestionTag: function () { localStorage.removeItem("QuestionTag"); }, ////设置弹窗选择值(返回值) //SetPopupVal: function (dataStr) { // localStorage.setItem("PopupVal", dataStr); //}, ////获取弹窗选择值(返回值) //GetPopupVal: function () { // return localStorage.getItem("PopupVal"); //}, ////删除弹窗选择值(返回值) //RemovePopupVal: function () { // localStorage.removeItem("PopupVal"); //}, }; //***************************************动态Html数据***************************************/ //动态Html辅助对象 var objHtml = { ////加载密码问题列表 //objID:加载到的对象 //Selected 选中val或text,没有则不填 LoadQuestionList: function (objID, Selected) { //ajax请求 返回数据 var jsonData = [ { "PWDQID": "1", "PWDQuestion": "你最喜欢的歌曲是什么" }, { "PWDQID": "2", "PWDQuestion": "你最崇拜的偶像是谁" }, { "PWDQID": "3", "PWDQuestion": "你最喜欢的宠物是什么" }, { "PWDQID": "4", "PWDQuestion": "你最敬佩的老师是谁" }, { "PWDQID": "5", "PWDQuestion": "你的高中班主任是" }, { "PWDQID": "6", "PWDQuestion": "你的高中学号是" } ]; objID.html(""); $.each(jsonData, function (i, v) { if (v.PWDQID == Selected) { objID.append("<option selected='selected' value='" + v.PWDQID + "'>" + v.PWDQuestion + "</option>"); } else if (v.PWDQuestion == Selected) { objID.append("<option selected='selected' value='" + v.PWDQID + "'>" + v.PWDQuestion + "</option>"); } else { objID.append("<option value='" + v.PWDQID + "'>" + v.PWDQuestion + "</option>"); } }); }, //加载实验名 //objID:加载到的对象 //whole是否需要全部选项,1有 0无 默认0 //Selected 选中val或text,没有则不填 //TxtID:text对象,可输入的下拉框,select与text组合控件使用时用的 LoadExperimenterName: function (objID, whole, Selected, TxtID) { whole = objValidate.NotNull(whole) ? whole : "0"; var jsonData; if (objValidate.NotNull(objlocalStorage.GetExperimenterName())) { jsonData = $.parseJSON(objlocalStorage.GetExperimenterName()); objID.html(""); if (whole == 1) { objID.append("<option value='全部'>全部</option>"); } $.each(jsonData, function (i, v) { if (v.ExperimentID == Selected) { objID.append("<option selected='selected' value='" + v.ExperimentID + "'>" + v.ExperimentName + "</option>"); } else if (v.ExperimentName == Selected) { objID.append("<option selected='selected' value='" + v.ExperimentID + "'>" + v.ExperimentName + "</option>"); } else { objID.append("<option value='" + v.ExperimentID + "'>" + v.ExperimentName + "</option>"); } }); if (objValidate.NotNull(TxtID)) { TxtID.val(objID.val()); } return false; } var parameterInfo = { action: "getexperimentnamelist", }; $.post("Execute/ExperimentsInfo.aspx", parameterInfo, function (data) { jsonData = $.parseJSON(data); objlocalStorage.SetExperimenterName(jsonData.data); jsonData = $.parseJSON(jsonData.data); objID.html(""); if (whole == 1) { objID.append("<option value='0'>全部</option>"); } $.each(jsonData, function (i, v) { if (v.ExperimentID == Selected) { objID.append("<option selected='selected' value='" + v.ExperimentID + "'>" + v.ExperimentName + "</option>"); } else if (v.ExperimentName == Selected) { objID.append("<option selected='selected' value='" + v.ExperimentID + "'>" + v.ExperimentName + "</option>"); } else { objID.append("<option value='" + v.ExperimentID + "'>" + v.ExperimentName + "</option>"); } }); if (objValidate.NotNull(TxtID)) { TxtID.val(objID.val()); } }); }, //加载课程列表 //objID:加载到的对象 //whole是否需要全部选项,1有 0无 默认0 //TxtID:text对象,可输入的下拉框,select与text组合控件使用时用的 LoadCourseType: function (objID, whole, TxtID) { whole = objValidate.NotNull(whole) ? whole : "0"; if (objValidate.NotNull(objlocalStorage.GetCourseType())) { var jsonData = $.parseJSON(objlocalStorage.GetCourseType()); objID.html(""); if (whole == 1) { objID.append("<option value='全部'>全部</option>"); } $.each(jsonData, function (i, v) { objID.append('<option value="' + v.CourseID + '">' + v.CourseName + '</option>') }); if (objValidate.NotNull(TxtID)) { TxtID.val(objID.val()); } return false; } var parameter = { action: "getcoursetypelist", }; $.post("Execute/ExperimentsInfo.aspx", parameter, function (returndata) { var jsonData = jQuery.parseJSON(returndata).data; objlocalStorage.SetCourseType(jsonData); jsonData = $.parseJSON(jsonData); objID.html(""); if (whole == 1) { objID.append("<option value='全部'>全部</option>"); } $.each(jsonData, function (i, v) { objID.append('<option value="' + v.CourseID + '">' + v.CourseName + '</option>'); }); if (objValidate.NotNull(TxtID)) { TxtID.val(objID.val()); } }); }, //加载实验类型列表 //objID:加载到的对象 //whole是否需要全部选项,1有 0无 默认0 //Selected 选中val或text,没有则不填 LoadExperimenterType: function (objID, whole, Selected) { whole = objValidate.NotNull(whole) ? whole : "0"; var jsonData = [ { "ExperimentTypeID": "1", "ExperimentTypeName": "虚拟仿真" }, { "ExperimentTypeID": "2", "ExperimentTypeName": "实拍视频" }, { "ExperimentTypeID": "3", "ExperimentTypeName": "动画" } ]; objID.html(""); if (whole == 1) { objID.append("<option value='0'>全部</option>"); } $.each(jsonData, function (i, v) { if (v.ExperimentTypeID == Selected) { objID.append("<option selected='selected' value='" + v.ExperimentTypeID + "'>" + v.ExperimentTypeName + "</option>"); } else if (v.ExperimentTypeName == Selected) { objID.append("<option selected='selected' value='" + v.ExperimentTypeID + "'>" + v.ExperimentTypeName + "</option>"); } else { objID.append("<option value='" + v.ExperimentTypeID + "'>" + v.ExperimentTypeName + "</option>"); } }); }, //加载学年列表 //objID:加载到的对象 //whole是否需要全部选项,1有 0无 默认0 //Selected 选中val或text,没有则不填 LoadSchoolYear: function (objID, whole, Selected) { whole = objValidate.NotNull(whole) ? whole : "0"; var jsonData = [ { "val": "1", "txt": "一学年" }, { "val": "2", "txt": "二学年" }, { "val": "3", "txt": "三学年" } ]; objID.html(""); if (whole == 1) { objID.append("<option value='0'>全部</option>"); } $.each(jsonData, function (i, v) { if (v.val == Selected) { objID.append("<option selected='selected' value='" + v.val + "'>" + v.txt + "</option>"); } else if (v.txt == Selected) { objID.append("<option selected='selected' value='" + v.val + "'>" + v.txt + "</option>"); } else { objID.append("<option value='" + v.val + "'>" + v.txt + "</option>"); } }); }, //加载学期列表 //objID:加载到的对象 //whole是否需要全部选项,1有 0无 默认0 //Selected 选中val或text,没有则不填 LoadSemester: function (objID, whole, Selected) { whole = objValidate.NotNull(whole) ? whole : "0"; var jsonData = [ { "val": "1", "txt": "上学期" }, { "val": "2", "txt": "下学期" } ]; objID.html(""); if (whole == 1) { objID.append("<option value='0'>全部</option>"); } $.each(jsonData, function (i, v) { if (v.val == Selected) { objID.append("<option selected='selected' value='" + v.val + "'>" + v.txt + "</option>"); } else if (v.txt == Selected) { objID.append("<option selected='selected' value='" + v.val + "'>" + v.txt + "</option>"); } else { objID.append("<option value='" + v.val + "'>" + v.txt + "</option>"); } }); }, //加载提问问题标签列表 //objID:加载到的对象 //whole是否需要全部选项,1有 0无 默认0 //TxtID:text对象,可输入的下拉框,select与text组合控件使用时用的 LoadQuestionTag: function (objID, whole, TxtID) { whole = objValidate.NotNull(whole) ? whole : "0"; if (objValidate.NotNull(objlocalStorage.GetQuestionTag())) { objID.html(""); if (whole == 1) { objID.append("<option value='全部'>全部</option>"); } var jsonData = $.parseJSON(objlocalStorage.GetQuestionTag()); $.each(jsonData, function (i, v) { objID.append("<option value='" + v.QuestionTag + "'>" + v.QuestionTag + "</option>"); }); if (objValidate.NotNull(TxtID)) { TxtID.val(objID.val()); } } else { //ajax请求返回数据 var parameter = { "action": "GetQuestionTagList", }; $.post("Execute/QuestionAnswersInfo.aspx", parameter, function (returndata) { var res = jQuery.parseJSON(returndata); objID.html(""); if (whole == 1) { objID.append("<option value='全部'>全部</option>"); } if (res.result == 0) { return; } objlocalStorage.SetQuestionTag(res.data); var jsonData = $.parseJSON(res.data); $.each(jsonData, function (i, v) { objID.append("<option value='" + v.QuestionTag + "'>" + v.QuestionTag + "</option>"); }); if (objValidate.NotNull(TxtID)) { TxtID.val(objID.val()); } }); } }, //加载班级信息 //objID:加载到的对象 Load_Class: function (objID) { var jsonData; if (objValidate.NotNull(objlocalStorage.GetClass())) { jsonData = $.parseJSON(objlocalStorage.GetClass()); objID.html(""); objID.append("<option value='==全部=='>==全部==</option>"); $.each(jsonData, function (i, v) { objID.append("<option value='" + v.Class + "'>" + (v.Class.trim() == "" ? "未填写" : v.Class) + "</option>"); }); } else { var parameterUserInfo = { action: "GetClassList" }; $.post("Execute/UsersInfo.aspx", parameterUserInfo, function (returndata) { jsonData = $.parseJSON(returndata); objlocalStorage.SetClass(jsonData.data); objID.html(""); objID.append("<option value='==全部=='>==全部==</option>"); if (jsonData.result == 0) { return false; } jsonData = $.parseJSON(jsonData.data); $.each(jsonData, function (i, v) { objID.append("<option value='" + v.Class + "'>" + (v.Class.trim() == "" ? "未填写" : v.Class) + "</option>"); }); }); } }, //加载专业列表 //objID:加载到的对象 Load_Major: function (objID) { if (objValidate.NotNull(objlocalStorage.GetMajor())) { var jsonData = $.parseJSON(objlocalStorage.GetMajor()); objID.html(""); objID.append("<option value='==全部=='>==全部==</option>"); if (jsonData.result == 0) { return; } $.each(jsonData, function (i, v) { objID.append("<option value='" + v.Major + "'>" + (v.Major.trim() == "" ? "未填写" : v.Major) + "</option>"); }); } else { $.post("Execute/UsersInfo.aspx", { "action": "GetMajorList" }, function (data) { var jsonData = $.parseJSON(data); objID.html(""); objID.append("<option value='==全部=='>==全部==</option>"); if (jsonData.result == 0) { return; } objlocalStorage.SetMajor(jsonData.data); jsonData = $.parseJSON(jsonData.data); $.each(jsonData, function (i, v) { objID.append("<option value='" + v.Major + "'>" + (v.Major.trim() == "" ? "未填写" : v.Major) + "</option>"); }); }); } } }; //弹出消息对象 var objPopupMsg = { //确认框 //msg:弹出消息 //operation操作程序标识 无则不填 不填则默认为nothing 该值传过来后存在确认按钮的data-operation中 //val 附加值 用于传参 默认为0 该值传过来后存在确认按钮的data-val中 Confirm: function (msg, operation, val) { operation = objValidate.NotNull(operation) ? operation : "nothing"; val = objValidate.NotNull(val) ? val : "0"; $("#popup_confirm", window.parent.document).data("operation", operation).data("val", val); $("#prompt_content", window.parent.document).text(msg); $("#popup_cancel", window.parent.document).show(); $("#popup", window.parent.document).show(); ////关闭取消弹窗 $("#popup_cancel", window.parent.document).click(function () { //关闭弹窗 $("#popup", window.parent.document).hide(); }); }, //警告框 //msg:弹出消息 //operation操作程序标识 无则不填 不填则默认为nothing 该值传过来后存在确认按钮的data-operation中 Alert: function (msg, operation) { operation = objValidate.NotNull(operation) ? operation : "nothing"; $("#popup_confirm", window.parent.document).data("operation", operation); $("#prompt_content", window.parent.document).text(msg); $("#popup_cancel", window.parent.document).hide(); $("#popup", window.parent.document).show(); ////关闭取消弹窗 $("#popup_cancel", window.parent.document).click(function () { //关闭弹窗 $("#popup", window.parent.document).hide(); }); }, //确定或取消返回值代码 ReturnVal: function () { //使用一下代码做处理获取弹出返回值 ////关闭确定取消弹窗 $("#popup_confirm,#popup_cancel", window.parent.document).click(function () { //关闭弹窗 $("#popup", window.parent.document).hide(); //close confirm cancel 为区分点击的是关闭 确认 还是取消 var _text = $(this).data("text"); //默认为nothing表示无操作 为区分同一页面有多个确认框 点击各个确认框所做出不同的处理 //var _operation = $(this).data("operation"); //附加值 用于传参 //val只有点击确定按钮时才有 关闭 取消按钮没有 //var _val = $(this).data("val"); }); } }; //***************************************自定义方法***************************************/ //自定义字典对象 function Dictionary() { this.data = new Array(); //键不可为0 this.set = function (key, value) { if (this.data[key] == null) { this.data[key] = value; } }; this.get = function (key) { return this.data[key]; }; this.remove = function (key) { this.data[key] = null; }; this.removeall = function () { this.data.length = 0; }; this.isEmpty = function () { return this.data.length == 0; }; this.size = function () { return this.data.length; }; } //***************************************立即执行方法***************************************/ $(function () { var href = window.location.pathname; //登录 注册页面 不用提示 if (href.indexOf("SignIn.html") == -1 && href.indexOf("register.html") == -1) { //验证登录状态并登录超时提示 return objCommon.LoginAlert(); } });
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!