// JavaScript Document /* 公共函数区,当前站点所有页面都可能会用到的站点内容 */ var HostUrl = "http://" + document.location.host; var listflag; //定义排序的变量为1是逆序,0为顺序. function Fgoto() {void(0);} function CloseMe() { window.opener = null; window.open('', "_self"); window.close(); } function ShowSubmit() { if ($("#Div_AjaxStatu")) { $("#Div_AjaxStatu").html("提交中...请求成功!").fadeOut(600); }} function ShowError() {if ($("#Div_AjaxStatu")) $("#Div_AjaxStatu").html("请求失败!").fadeOut(1000);} function ShowComplete() {if ($("#Div_AjaxStatu")) $("#Div_AjaxStatu").html("请求完成!").fadeOut(2000);} function $E(obj) { if (typeof (obj) == "object") { return obj; } else { return document.getElementById(obj); } } function Red(str) {return "" + str + "";} function Green(str) {return "" + str + "";} function Yellow(str) {return "" + str + "";} function Black(str) {return "" + str + "";} function Purple(str) {return "" + str + "";} function B(str) {return "" + str + "";} function LoadJs(JsFileName) { var J = []; J = JsFileName.split(","); for (i = 0; i < J.length; i++) { var scriptTag = document.getElementById(J[i] + "_JS"); var head = document.getElementsByTagName('head').item(0); if (scriptTag) { head.removeChild(scriptTag); } script = document.createElement('script'); script.src =J[i]; script.type = 'text/javascript'; script.charset = "utf-8"; script.id = J[i] + "_JS"; head.appendChild(script); } } function LoadCss(CssFileName) { var C = []; C = CssFileName.split(","); for (i = 0; i < C.length; i++) { var cssTag = document.getElementById(C[i] + "_CSS"); var head = document.getElementsByTagName('head').item(0); if (cssTag) { head.removeChild(cssTag); } css = document.createElement('link'); css.href =C[i]; css.rel = 'stylesheet'; css.type = 'text/css'; css.charset = "utf-8"; css.id = C[i] + "_CSS"; head.appendChild(css); } } function CreateCookie(name, value, days) { var expires = ""; if (days) { var date = new Date(); date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); expires = "; expires=" + date.toGMTString(); } document.cookie = name + "=" + value + expires + "; path=/"; } function ReadCookie(name) { var nameEQ = name + "="; var ca = document.cookie.split(';'); for (var i = 0; i < ca.length; i++) { var c = ca[i]; while (c.charAt(0) === ' ') c = c.substring(1, c.length); if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length, c.length); } return null; } function EraseCookie(name) { CreateCookie(name, "", -1);} function ChgSkin(SkinName) { LoadCss(SkinName); CreateCookie("Skin", SkinName, 30);} //打开新窗口 function OpenUrl() { var ac = arguments.length, av = arguments; var url = av[0]; if (ac === 1) { window.open(url); } else { var windowname = av[1] ? av[1] : '_self'; var windowwidth = av[2] ? av[2] : 600; var windowheight = av[3] ? av[3] : 360; var screenwidth = screen.width; // var screenheight = screen.height; // var left = (screenwidth - windowwidth) / 2; var top = (screenheight - windowheight) / 2; //alert('top='+top+',left='+left+',height='+windowheight+',width='+windowwidth+',status=yes,toolbar=no,menubar=no,location=no'); window.open(url, windowname, 'top=' + top + ',left=' + left + ',height=' + windowheight + ',width=' + windowwidth + ',status=yes,toolbar=no,menubar=no,resizable=no,scrollbars=yes,location=no'); } } // 向指定页面提交数据,并将获得的数据填充到displayobj容器中; function AjaxAction(actionurl, displayobj, urldata) { $.ajax({ url: actionurl, cache: false, data: urldata, beforeSend: ShowSubmit(), success: function (jsondata) { if (displayobj) { $(displayobj).html(jsondata.data); } else { $.Msger.Show(jsondata); } }, complete: ShowComplete() }); } function TextEdit(obj, actionurl, ExtraData) { actionurl = actionurl + "?p=" + ExtraData; var num_Flag = (arguments[3]) ? arguments[3] : false; var Evt = (arguments[4]) ? arguments[4] : 'dblclick'; /*var bt_Submit=(arguments[4])?arguments[4]:''; var bt_Cancel=(arguments[5])?arguments[5]:'';*/ $(obj).children('a').remove(); $(obj).editable(actionurl, { indicator: "...", id: "RecField", name: "NewValue", numeral: num_Flag, /* submit : bt_Submit, cancel : bt_Cancel,*/ event: Evt, height: '18px', onblur: 'submit', placeholder: '__', style: "inherit" }); } function SelectEdit(obj, actionurl, ExtraData, OptionVar) { actionurl = actionurl + "?" + ExtraData; //var num_Flag=(arguments[4])?arguments[4]:false; var Evt = (arguments[5]) ? arguments[5] : 'dblclick'; /*var bt_Submit=(arguments[5])?arguments[5]:''; var bt_Cancel=(arguments[6])?arguments[6]:''; */ $(obj).editable(actionurl, { indicator: "...", type: "select", id: "RecField", name: "NewValue", /* submit : bt_Submit, cancel : bt_Cancel,*/ event: Evt, onblur: 'submit', data: OptionVar, style: "inherit" }); } function TextareaEdit(obj, actionurl, ExtraData, Width, Height) { actionurl = actionurl + "?" + ExtraData; Height = Height ? Height : 200; Width = Width ? Width : 400; /*var bt_Submit=(arguments[5])?arguments[5]:''; var bt_Cancel=(arguments[6])?arguments[6]:'';*/ $(obj).editable(actionurl, { indicator: "...", type: "textarea", id: "RecField", name: "NewValue", /*submit : bt_Submit, cancel : bt_Cancel, event:Evt,*/ height: Height, width: Width, style: "inherit" }); } function OpenMenu(MenuClass, MenuObj) { $(MenuClass).each(function (i, Menu) { if ($(Menu).attr("id") === MenuObj) { $(Menu).slideToggle(); } else { $(Menu).slideUp(); } }); } function LoadLastPage(LastPageData) { var LastPageData = LastPageData ? LastPageData : ReadCookie("LastPageData"); var L = (LastPageData) ? LastPageData.split(":") : ''; if (L.length > 0 && L[0] === GetCurUrl(1)) { LoadPage(L[1], L[2], L[3]); } else { return; } } function CheckRecExist(inputobj, actionurl, ExtraData, trueAction, falseAction) { var urldata = ExtraData + "&RecField=" + $(inputobj).attr("id") + "&ChkVal=" + $(inputobj).val(); $.ajax({ url: actionurl, cache: false, data: urldata, beforeSend: ShowSubmit(), success: function (html) { if (html === "true") { trueAction; return; } else { falseAction ? falseAction : ''; } }, complete: ShowComplete() }); } function ShowSuggest(inputObj, actionUrl, ExtraData) { $(inputObj).jSuggest({ url: actionUrl, type: "GET", data: ExtraData, /* in this case it's suggestion.html?searchQuery=[text in the text field] */ autoChange: false, minChar: 1, delay: 500 }); } function DisableSubmit() { if ($("#submit")) $("#submit").attr('disabled', true);} function EnableSubmit() { if ($("#submit")) $("#submit").attr('disabled', false);} function LoadImages(ImagePath, PicList) { //图片文件夹路径,图片名称列表 var myimages = []; for (i = 1; i < arguments.length; i++) { myimages[i] = new Image(); if (myimages[i].complete) { continue; } else { myimages[i].src = arguments[0] + "/" + arguments[i]; } } } //跳转到问卷调查系统答题页面 function goto_survey(svy_id, rt_url) { var svy_api = HostUrl + "/svy/" + svy_id; top.location.href = svy_api + "?rt=" + rt_url; $.cookie('svy_rt_url', rt_url, { expires: 1, path: '/' }); } //Ajax动态加载option函数 function loadAjaxOptions(actionObj, linkObj, actionUrl, urlData) { var ObjVal = $(actionObj).val(); if (ObjVal == '') { $(linkObj).empty().append(""); return } else { if (!linkObj || !actionUrl || !urlData) { return; } var urldata = "p=" + urlData + "&scstr=" + $(actionObj).val(); $.ajax({ url: actionUrl, cache: false, data: urldata, beforeSend: ShowSubmit(), success: function (data) { $(linkObj).empty(); var output = []; $.each(data, function (key, value) { output.push(''); }); $(linkObj).html(output.join('')); }, complete: ShowComplete() }); } } function Ajax_fileupload(LinkObj, actionUrl, fileType,receive_input_obj) { var LinkObjId = LinkObj.replace("#", ""); var extra_Data=arguments[4] ? arguments[4] : ''; var host_url=arguments[5] ? arguments[5] : ''; if ($('#Div_Ajax_Upload').length === 0) { var OrgLinkHtml = $(LinkObj).prop("outerHTML"); fileType = fileType.toLowerCase(); $(LinkObj).replaceWith("
"); var UploadWarp = $("#Div_Ajax_Upload"); UploadWarp.append(""); UploadWarp.delegate('#Cancel_Link', 'click', function () { UploadWarp.replaceWith(OrgLinkHtml); }); var FileInput = $("#SelectFile"); UploadWarp.delegate('#SelectFile', 'change', function () { var Filesuffix =GetFileExt(FileInput.val()); Filesuffix = Filesuffix.toString().toLowerCase(); if (fileType.indexOf(Filesuffix) === -1) { alert("文件类型不符!"); FileInput.val(''); } else { FileInput.wrap("").after("").hide(); if(extra_Data){ for(var key in extra_Data){ FileInput.after(""); } } $("#Form_ajax_Upload").before(("" + FileInput.val() + "")); $("#Cancel_Link").before(""); $("#SelectCancel").wrap(""); } }); UploadWarp.delegate("#ajaxUpload_Link", 'click', function () { $("#Form_ajax_Upload").ajaxSubmit({ type:'POST', dataType: 'json', xhr: function() { var xhr = $.ajaxSettings.xhr(); //绑定上传进度的回调函数 xhr.upload.addEventListener('progress', progress, false); return xhr;//一定要返回,不然jQ没有XHR对象用了 }, xhrFields: { onsendstart: function() { //this是指向XHR this.upload.addEventListener('progress', progress, false); } }, beforeSubmit: function () { $("#ajaxUpload_BarFrame").show(); $("#ajaxUpload_ProcessBar").html(FileInput.val()); }, uploadProgress: function (event, position, total, percentComplete) { var percentVal = percentComplete + '%'; $("#ajaxUpload_ProcessBar").animate({width:percentVal}).html(percentVal); }, success: function (data) { var fileUrl = host_url + data.Rpath; UploadWarp.replaceWith("" + data.Rname + "删除"); $("#ajaxUpload_DelFile").on('click',function(){ var flag = window.confirm("您确定要删除吗?"); if (flag === true) { $.post(actionUrl, { FilePath: $(this).attr("rel"), act: 'delfile' }, function (msg) { if (msg.result === 1) { $('#' + LinkObjId).replaceWith(OrgLinkHtml); //$("#ajaxUpload_DelFile_"+Td_Id).remove(); } else { alert(msg.errMsg); } },"json"); } else {return false;} }); $("#ajaxUpload_Link,#Cancel_Link").remove(); }, error: function (xhr) { $("#ajaxUpload_ProcessBar").width('100%').html(xhr.responseText); $.Msger.Show(0,'上传出错',xhr.responseText); } }); return false; }); } else { alert("请先取消另一个文件的上传操作!"); } } //更新记录值 function UpdateRec(actionurl, pstr, RecField, UpdateValue, displayobj) { var displayobj = typeof (displayobj) == "object" ? displayobj : $(displayobj); var ExtraData = (arguments[5]) ? arguments[5] : 'OK'; if (!RecField || !UpdateValue) { alert('参数缺失'); return; } var urldata = "p=" + pstr + "&RecField=" + RecField + "&NewValue=" + UpdateValue + "&ExtraData=" + ExtraData; var flag = window.confirm("您确定该操作吗?\n\n该操作将不可恢复!!!") if (flag == true) { $.ajax({ url: actionurl, cache: false, data: urldata, beforeSend: ShowSubmit(), success: function (data) { $(displayobj).html(data == '1' ? ExtraData : data) }, complete: ShowComplete() }); } else return; } function DelRec(actionurl, pstr, displayobj) { //删除整条记录 if (!pstr) { return }; var urldata = "p=" + pstr; var RecField = (arguments[4]) ? arguments[4] : ''; var DelFlag = (arguments[5]) ? arguments[5] : true; var flag = window.confirm("你确定要删除吗?\n\n该操作将不可恢复!!!") if (flag == true) { $.ajax({ url: actionurl, cache: false, data: urldata, beforeSend: ShowSubmit(), success: function (html) { jQuery.Msger.Show(html.data); }, complete: function () { $(displayobj).remove(); } }); } else return; } function GetCurUrl(flag) { var CurUrl = document.location.href var CurUrlA = CurUrl.split("?") var CurUrlB = CurUrlA[0].split("/") switch (flag) { case 0: //返回URL及参数 return CurUrl; break; case 1: //返回文件名,不带参数 return CurUrlB[CurUrlB.length - 1] break; case 2: //返回路径,不带参数 return CurUrlA[0] break; case 3: //返回参数 return CurUrlA[1] break; default: //默认返回路径及参数 return CurUrl; } } function randomColor() { var r, g, b; r = decToHex(randomNumber(256) - 1); g = decToHex(randomNumber(256) - 1); b = decToHex(randomNumber(256) - 1); return "#" + r + g + b; } function ShowLen(obj, showobj) { var Str = $(obj).val() if (Str.len() > 0) { $(showobj).html("共" + Str.len() + "字"); } else { $(showobj).html(""); } } function GetArgsFromHref(sArgName) { var sHref = top.location.href; var args = sHref.split("?"); var retval = ""; if (args[0] == sHref) /*参数为空*/ { return retval; /*无需做任何处理*/ } var str = args[1]; args = str.split("&"); for (var i = 0; i < args.length; i++) { str = args[i]; var arg = str.split("="); if (arg.length <= 1) continue; if (arg[0] == sArgName) retval = arg[1]; } return retval; } function GetFileExt(filepath) { if (filepath != "") { var pos = "."+filepath.replace(/.+\./, ""); return pos.toString().toLowerCase(); } } function plat_is_mobile() { var sUserAgent = navigator.userAgent.toLowerCase(); var bIsIpad = sUserAgent.match(/ipad/i) == "ipad"; var bIsIphoneOs = sUserAgent.match(/iphone os/i) == "iphone os"; var bIsMidp = sUserAgent.match(/midp/i) == "midp"; var bIsUc7 = sUserAgent.match(/rv:1.2.3.4/i) == "rv:1.2.3.4"; var bIsUc = sUserAgent.match(/ucweb/i) == "ucweb"; var bIsAndroid = sUserAgent.match(/android/i) == "android"; var bIsCE = sUserAgent.match(/windows ce/i) == "windows ce"; var bIsWM = sUserAgent.match(/windows mobile/i) == "windows mobile"; if (bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM) { return true; } else { return false; } } function is_WeiXin() { var ua = window.navigator.userAgent.toLowerCase(); if (ua.match(/MicroMessenger/i) == 'micromessenger') { return true; } else { return false; } } function is_empty(str) { return (str === '' || str === null) ? true : false; } /*=====================js字符串处理扩展函数======================= ==============================================================*/ String.prototype.trim = function () { return this.replace(/(^\s*)|(\s*$)/g, ''); } String.prototype.is_moblie = function () { var ptstr = /^0?1[3|4|5|6|7|8|9][0-9]\d{8}$/; return ptstr.test(this); } String.prototype.is_email = function () { var ptstr = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/; return ptstr.test(this); } String.prototype.is_pswd = function () { var ptstr = /^[a-zA-Z0-9_]{6,16}/; return ptstr.test(this); } String.prototype.is_empty = function () { return (this === '' || this === null) ? true : false; } /*=====================js时间处理扩展函数======================= ==============================================================*/ //js格式化时间 "yyyy-MM-dd hh:mm:ss",用法mydate.Format("yyyy/MM/dd hh:mm:ss"); Date.prototype.Format = function (fmt) { var o = { "M+": this.getMonth() + 1, //月份 "d+": this.getDate(), //日 "h+": this.getHours(), //小时 "m+": this.getMinutes(), //分 "s+": this.getSeconds(), //秒 "q+": Math.floor((this.getMonth() + 3) / 3), //季度 "S": this.getMilliseconds() //毫秒 }; if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.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; } //js时间增加分钟,用法mydate.addMinutes(3); Date.prototype.addMinutes = function (m) { this.setMinutes(this.getMinutes() + m, this.getSeconds(),0); } //js时间增加小时,用法mydate.addHours(3); Date.prototype.addHours = function (h) { this.setHours(this.getHours() + h, this.getMinutes(),this.getSeconds(),0); } //js时间增加天数,用法mydate.addDays(3); Date.prototype.addDays = function (d) { this.setDate(this.getDate() + d); } //js时间增加周数,用法mydate.addWeeks(3); Date.prototype.addWeeks = function (w) { this.addDays(w * 7); } //js时间增加月数,用法mydate.addMonths(3); Date.prototype.addMonths = function (m) { var d = this.getDate(); this.setMonth(this.getMonth() + m); if (this.getDate() < d) this.setDate(0); } //js时间增加年数,用法mydate.addYears(3); Date.prototype.addYears = function (y) { var m = this.getMonth(); this.setFullYear(this.getFullYear() + y); if (m < this.getMonth()) { this.setDate(0); } } // 文本框填写错误提示动作,配合input等对象的.error样式类使用; jQuery(function () { jQuery.fn.inputError = function (ErrorClass) { var ErrorClass = ErrorClass ? ErrorClass : "error"; return this.each(function () { jQuery(this).addClass(ErrorClass).focus().one("change", function () { jQuery(this).removeClass(ErrorClass) }); }); } }); //文本框输入数字或小数点限制 jQuery(function () { jQuery.fn.numeral = function () { return this.each(function () { jQuery(this).css("ime-mode", "disabled"); jQuery(this).bind("keypress", function (e) { var code = (e.keyCode ? e.keyCode : e.which); //FireFox,Ie //if(!$.browser.msie&&(e.keyCode==0x8)){return;}; return (code >= 48 && code <= 57 || code == 8 || code == 46); }); jQuery(this).bind("blur", function () { if (this.value.lastIndexOf(".") == (this.value.length - 1)) { jQuery(this).value = this.value.substr(0, this.value.length - 1); } else if (this.value == '') { this.value = ""; } else { return; }; }); jQuery(this).bind("paste", function () { var s = clipboardData.getData('text'); if (!/\D/.test(s)); this.value = s.replace(/[^0-9.]/g, ''); return false; }); jQuery(this).bind("dragenter", function () { return false; }); jQuery(this).bind("keyup", function () { if (/(^0+)/.test(this.value)) { this.value = this.value.replace(/[^0-9.]/g, '') } }); }); } });