等图书符号 */ function escape2Htmlb(str) { var arrEntities={'lt':'<','gt':'>','nbsp':' ','amp':'&','quot':'"'}; var stt = str.replace(/&(lt|gt|nbsp|amp|quot);/ig,function(all,t){ return arrEntities[t]; }); return escape2Html(stt).replace(/<.*?>/ig,""); } /** *根据表id监听switch */ function switchMonitor(data,tableTest,id,is){ var change = data.elem.checked; alert(this.id); //获取表格数据 var oldData = table.cache["tableTest"]; for (var i = 0; i < oldData.length; i++) { if(oldData[i].trid == this.id ){ if(change){ oldData[i].isdecision = 1; }else{ oldData[i].isdecision = 0; } } } table.cache["tableTest"] = oldData; } /**每次登陆清理之前的残留缓存*/ function clearLove(){ setTempVal("TEMP_APP_PARAM_IS_SET",""); setTempVal("TEMP_APP_ROLEBSN_IS_SET","") } /** * 打开新页面 * 点击我跳转 * * @param obj:this * @param param:下个页面要显示的数据 */ function showChapters(obj, param) { openMainTabPage($(obj).attr("novelName"), $(obj).attr("_href"), param); } /** * * 跳转页面 * * @param id :新页面页面ID * @param title 页面标题 * @param hrefPage 要跳转的页面 * @param param 传到下个页面的参数 * @param nowPageId 当前页面ID ---回调函数用 * @param backFunction 回调函数 */ function openMainTabPage(id, title, hrefPage, param, nowPageId, backFunction) { layui.use(['element'], function () { $ = layui.jquery; var novelName= ' / ' + title; var url= hrefPage; if(hrefPage.indexOf('?') != -1) { url = url + "¶m=" + param; } else { url = url + "?param=" + param; } parent.element.tabDelete('kitTab', id); var winHeight = window.innerHeight - 60; res = parent.element.tabAdd('kitTab', { title: novelName ,content: '' ,id:id }); parent.element.tabChange('kitTab', id);//添加选项卡后,默认此tab为选中状态 $("#titileTabId", parent.document).show(); //$("#tabContent", parent.document).css("top","46px"); $("#titileTabId", parent.document).css({display:""}); // 如果是从主页跳转过来的,head居右 if(nowPageId == '-1' || '000000' == nowPageId) { $("#titileTabId", parent.document).css("left","0px"); } else { $("#titileTabId", parent.document).css("left","200px"); } parent.element.on('tab(kitTab)', function(data){ var oDiv = document.createElement('div'); oDiv.style.display="none"; oDiv.innerHTML = this.outerHTML; var nowTabId = oDiv.childNodes[0].getAttribute('lay-id'); if(backFunction && nowTabId == nowPageId) { backFunction(); } // 获取所有的标签 var tabTile = $(this).parent('.kit-tab ul.layui-tab-title'); var tabIdArr = []; tabTile.children('li[lay-id]').each(function() { var curId = $(this).attr('lay-id').toString(); tabIdArr[tabIdArr.length] = curId; }); // 排序 tabIdArr.sort(function(a,b){ return a.length > b.length; }); var tabIdArr2 = []; var goHere = false; // 删除当前标签以前的标签 for(tableId in tabIdArr) { tableId = tabIdArr[tableId]; if(nowTabId == tableId) { goHere = true; } if(nowTabId != tableId && goHere) { tabIdArr2[tabIdArr2.length] = tableId; } } // 排序 tabIdArr2.sort(function(a,b){ return a.length < b.length; }); for(tableId in tabIdArr2) { tableId = tabIdArr2[tableId]; try { parent.element.tabDelete('kitTab', tableId); } catch (err){ alert(err); } } // 如果是首页去掉head部 if(nowTabId == '-1' || '000000' == nowTabId) { $("#titileTabId", parent.document).hide(); $("#tabContent", parent.document).css("top","0px"); $("#titileTabId", parent.document).css({display:"none"}); } }); }); } /** * 关闭指定ID的页面 * @param id */ function deleteTabPage(id) { parent.element.tabDelete('kitTab', id); } /** * * 跳转页面 * * @param id :页面ID * @param title 页面标题 * @param hrefPage 要跳转的页面 * @param param 传到下个页面的参数 * @param nowPageId 当前页面ID ---回调函数用 * @param backFunction 回调函数 */ function openMainTabPageParent(id, title, hrefPage, param, nowPageId, backFunction) { layui.use(['element'], function () { $ = layui.jquery; var novelName= ' / ' + title; var url= hrefPage; if(hrefPage.indexOf('?') != -1) { url = url + "¶m=" + param; } else { url = url + "?param=" + param; } parent.parent.element.tabDelete('kitTab', id); var winHeight = window.innerHeight - 60; res = parent.parent.element.tabAdd('kitTab', { title: novelName ,content: '' ,id:id }); parent.parent.element.tabChange('kitTab', id);//添加选项卡后,默认此tab为选中状态 $("#titileTabId", parent.parent.document).show(); //$("#tabContent", parent.parent.document).css("top","46px"); $("#titileTabId", parent.parent.document).css({display:""}); $("#bottomGd", parent.parent.document).addClass("mainFull"); $("#container", parent.parent.document).addClass("mainFull"); // 如果是从主页跳转过来的,head居右 if(nowPageId == '-1' || '000000' == nowPageId) { $("#titileTabId", parent.parent.document).css("left","0px"); } else { $("#titileTabId", parent.parent.document).css("left","200px"); } parent.parent.element.on('tab(kitTab)', function(data){ var oDiv = document.createElement('div'); oDiv.style.display="none"; oDiv.innerHTML = this.outerHTML; var nowTabId = oDiv.childNodes[0].getAttribute('lay-id'); // 如果存在需要回调,则回调 if(backFunction && nowTabId == nowPageId) { backFunction(); } // 获取所有的标签 var tabTile = $(this).parent('.kit-tab ul.layui-tab-title'); var tabIdArr = []; tabTile.children('li[lay-id]').each(function() { var curId = $(this).attr('lay-id').toString(); tabIdArr[tabIdArr.length] = curId; }); // 排序 tabIdArr.sort(function(a,b){ return a.length > b.length; }); var tabIdArr2 = []; var goHere = false; // 删除当前标签以前的标签 for(tableId in tabIdArr) { tableId = tabIdArr[tableId]; if(nowTabId == tableId) { goHere = true; } if(nowTabId != tableId && goHere) { tabIdArr2[tabIdArr2.length] = tableId; } } // 排序 tabIdArr2.sort(function(a,b){ return a.length < b.length; }); for(tableId in tabIdArr2) { tableId = tabIdArr2[tableId]; try { parent.parent.element.tabDelete('kitTab', tableId); } catch (err){ alert(err); } } // 如果是首页去掉head部 if(nowTabId == '-1' || '000000' == nowTabId) { $("#titileTabId", parent.parent.document).hide(); $("#tabContent", parent.parent.document).css("top","0px"); $("#titileTabId", parent.parent.document).css({display:"none"}); } }); }); } /** * 关闭指定ID的页面 * @param id */ function deleteTabPageParent(id) { parent.parent.element.tabDelete('kitTab', id); } /** * * @param num 数字 * @param n 保留小数位数 * @returns */ function fomatFloat(num,n){ if (isEmpty(n)) { n = 6; } /*if (num.substring(0,1) == ".") { num = "0" + num; }*/ var f = parseFloat(num); if(isNaN(f)){ return false; } f = Math.round(num*Math.pow(10, n))/Math.pow(10, n); // n 幂 var s = f.toString(); var rs = s.indexOf('.'); //判定如果是整数,增加小数点再补0 if(rs < 0){ rs = s.length; s += '.'; } while(s.length <= rs + n){ s += '0'; } s = currKeepTwo(s); return s; } function currKeepTwo(num){ num = isEmpty(num)?"0.00":num; if (num.substring(0,1) == ".") { num = "0" + num; } var i = 0; while (num.substr(-1) == "0") { i ++; if (i == 5) { break; } num = num.substr(0,num.length - 1); } if (num.substr(-1) == ".") { num = num + "00"; } // num = fomatFloat(num, 2); return num; } String.prototype.endWith=function(endStr){ var d=this.length-endStr.length; return (d>=0&&this.lastIndexOf(endStr)==d); } String.prototype.trim=function() { return this.replace(/(^\s*)|(\s*$)/g, ''); } //加法 function accAdd(arg1, arg2,pointWs) { var r1, r2, max; try { r1 = arg1.toString().split(".")[1].length } catch (e) { r1 = 0 } try { r2 = arg2.toString().split(".")[1].length } catch (e) { r2 = 0 } max = Math.pow(10, Math.max(r1, r2)) if (isEmpty(pointWs)) { return ((arg1 * max + arg2 * max) / max) + ""; } else { // return ((arg1 * max + arg2 * max) / max).toFixed(pointWs); return Math.round(((arg1 * max + arg2 * max) / max)*Math.pow(10, pointWs))/Math.pow(10, pointWs) + ""; } } // 减法 function accSub(arg1, arg2,pointWs) { var r1, r2, max, min; try { r1 = arg1.toString().split(".")[1].length } catch (e) { r1 = 0 } try { r2 = arg2.toString().split(".")[1].length } catch (e) { r2 = 0 } max = Math.pow(10, Math.max(r1, r2)); //动态控制精度长度 min = (r1 >= r2) ? r1 : r2; if (isEmpty(pointWs)) { return ((arg1 * max - arg2 * max) / max).toFixed(min) + ""; } else { // return ((arg1 * max - arg2 * max) / max).toFixed(pointWs); return Math.round(((arg1 * max - arg2 * max) / max)*Math.pow(10, pointWs))/Math.pow(10, pointWs)+ ""; } } // 乘法 // pointWs:小数点位数 function accMul(arg1, arg2, pointWs) { var max = 0, s1 = arg1.toString(), s2 = arg2.toString(); try { max += s1.split(".")[1].length } catch (e) { } try { max += s2.split(".")[1].length } catch (e) { } var resData = Number(s1.replace(".", "")) * Number(s2.replace(".", "")) / Math.pow(10, max); if(!isEmpty(pointWs)) { // 四舍五入 return Math.round(resData*Math.pow(10, pointWs))/Math.pow(10, pointWs) + ""; } return resData + ""; } // 除法 //pointWs:小数点位数 function accDivFun(arg1, arg2, pointWs) { var t1 = 0, t2 = 0, r1, r2; try { t1 = arg1.toString().split(".")[1].length } catch (e) { } try { t2 = arg2.toString().split(".")[1].length } catch (e) { } with (Math) { r1 = Number(arg1.toString().replace(".", "")) r2 = Number(arg2.toString().replace(".", "")) var resData = (r1 / r2) * pow(10, t2 - t1); if(!isEmpty(pointWs)) { // 四舍五入 return Math.round(resData*Math.pow(10, pointWs))/Math.pow(10, pointWs) + ""; } return resData + ""; } } /** * 四舍五入 */ function format45(num,n){ if (isEmpty(n)) { n = 2; } var f = parseFloat(num); if(isNaN(f)){ return num; } f = Math.round(num*Math.pow(10, n))/Math.pow(10, n); // n 幂 return f; } // URL参数重新编码,解决get方式汉字乱码问题 function chineseUrlEncode(str) { return encodeURI(encodeURI(str)) } //URL参数解码,解决get方式汉字乱码问题 function chineseUrlDecodeURI(str) { return decodeURI(decodeURI(str)) } //组装下载 function exportExcel(action,data){ var tempForm = document.createElement("form"); tempForm.id="tempForm1"; tempForm.method="post"; tempForm.action=action; tempForm.target = '下载'; for(var k in data){ var hideInput = document.createElement("input"); hideInput.type="hidden"; hideInput.name= k; hideInput.value= data[k]; tempForm.appendChild(hideInput); } tempForm.addEventListener("onsubmit",function(){ self.open(action,name,'height=400, width=400, top=0, left=0, toolbar=yes, menubar=yes, scrollbars=yes, resizable=yes,location=yes, status=yes'); }); document.body.appendChild(tempForm); tempForm.submit(); document.body.removeChild(tempForm); } function strToDate(dateStr){ var year = parseInt(dateStr.substr(0, 4)); var month = parseInt(dateStr.substr(4, 2)) - 1; var day = parseInt(dateStr.substr(6, 2)); var date = new Date(year,month,day); return date; } function dateToString (date){ var year = date.getFullYear(); var month =(date.getMonth() + 1).toString(); var day = (date.getDate()).toString(); if (month.length == 1) { month = "0" + month; } if (day.length == 1) { day = "0" + day; } var dateTime = year + month + day; return dateTime; } function dateDiff(firstDate,secondDate){ firstDate = strToDate(firstDate); secondDate = strToDate(secondDate); var diff = Math.abs(firstDate.getTime() - secondDate.getTime()) var result = parseInt(diff / (1000 * 60 * 60 * 24)); return result }