<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                * easyui:具體組件用法可參考easyui官網demo及documentation http://www.jeasyui.com/ 當工程需要自定義easyui樣式或修改插件時可按此步驟 application.properties文件中load_custom.config.js設置為true ~~~ #是否加載本地自定義js配置 load_custom.config.js=true ~~~ ${ctx}/static/resources/scripts/custom.config.js文件內容 ~~~ /** * 自定義配置 * * 可覆蓋框架組件 * */ (function($) { /**Start:easyui自定義配置****************************************************/ //參考easyloader.sea.js文件對window.easyloader進行擴展 //注意:配置自定義的js或css一定要以/打頭,反之使用框架自帶的不需要以/打頭如下示例。 $.extend(true, window.easyloader, { customBase: ($.walk && $.walk.ctx ? $.walk.ctx:"") + "/static/resources/scripts/easyui/1.5/", customIcon: false,//themes/icon.css是否自定義 locales:{ "zh_CN": "/easyui-lang-zh_CN.js"//本地語言自定義 } , modules: { panel: { css: "/panel.css" }, pagination: { css: "/pagination.css" }, datagrid: { css: "/datagrid.css" } } }); /**End:easyui自定義配置******************************************************/ /**Start: seajs擴展配置****************************************************/ var ctx = $.walk.ctx; seajs.config({ // 別名配置:當模塊標識很長時,可以使用 alias 來簡化。 如果不想在這配置別名可直接寫路徑,例如seajs.use(['arale/position/1.0.1/position'], function(Position) {//代碼}); // 定義規范: // 1、jQuery插件以$開頭; // 2、非jQuery插件首字母大寫 alias: { //'Groupmgr': ctx + '/static/resources/scripts/common/groupmgr', }, // 路徑配置:當目錄比較深,或需要跨目錄調用模塊時,可以使用 paths 來簡化書寫 paths: { 'scripts': ctx + '/static/resources/scripts', 'css': ctx + '/static/resources/css' } }); /**End: seajs擴展配置****************************************************/ })(jQuery); ~~~ 在${ctx}/src/main/webapp/static/resources/scripts目錄下建立同walk-base-2.1.4-walk-webapp.jar中META-INF/component/resources/scripts/seajs/sea-modules/jquery/easyui下的相同目錄結構,然后復制jar中的原始文件到工程相同目錄下,修改即可。 ![](https://box.kancloud.cn/21dd1cb107ee84198ceefc1c46d9e34b_332x441.png) * config.js:seajs方式定義各個組件 * init.js:完成walk相關組件初始化工作 * walk.js:walk框架通用函數庫 ~~~ (function($){ $.walk = { //工程根路徑 ctx : $("#pageContext").attr("contextName"), //當前頁面 page : $("#pageContext").attr("pageName"), //頁面ID名稱 pageIdName : "pageId", //引用頁面ID名稱 openerPageIdName : "openerPageId", //服務器是否支持combo。在app.properties中指定 comboAble : ($("#pageContext").attr("comboAble") == true), //彈出信息框。 默認是從最頂層窗口彈出,但如果寫了回調方法則從調用窗口處彈出 alert : function (msg, typeOrFn, fn){ //第二個參數可能傳入回調函數 if(typeOrFn && $.isFunction(typeOrFn)){ fn = typeOrFn; } //第一個參數可能傳入一個json if($.isJson(msg) && msg.type != ''){ typeOrFn = msg.type; msg = msg.text; } //第一個參數可能傳入一個消息字符串 格式:<div><div id='type'>success</div><div id='text'>成功</div></div> else{ try{ var json = this.parseMessageJSON($(msg)); if(json.type){ typeOrFn = json.type; msg = json.text; } }catch(e){} } var title = "提示"; if(typeOrFn == "warning"){ title = "警告"; } else if(typeOrFn == "success"){ title = "成功"; } else if(typeOrFn == "error"){ title = "錯誤"; } else { typeOrFn = "info"; } //如果有回調函數將會從調用頁面處彈出,否則從頂層窗口彈出 if(fn && $.isFunction(fn)){ $.messager.alert(title, msg, typeOrFn, fn); } else { this.getTopWindow().$.messager.alert(title, msg, typeOrFn); } }, //確認框 confirm : function (msg, titleOrFn, fn){ //第二個參數可能傳入回調函數 if(titleOrFn && $.isFunction(titleOrFn)){ fn = titleOrFn; titleOrFn = "確認"; } titleOrFn = titleOrFn ? titleOrFn : "確認"; $.messager.confirm(titleOrFn, msg, fn); }, //對話框 prompt : function (msg, titleOrFn, fn){ //第二個參數可能傳入回調函數 if(titleOrFn && $.isFunction(titleOrFn)){ fn = titleOrFn; titleOrFn = "對話框"; } titleOrFn = titleOrFn ? titleOrFn : "對話框"; $.messager.prompt(titleOrFn, msg, fn); }, //進度框 progress : function (optionsOrMethod){ $.messager.progress(optionsOrMethod); }, //show show : function (options){ $.messager.show(options); }, //獲取工程最頂端窗口。不用top的原因:可能會有其他工程iframe嵌套 getTopWindow : function (){ //默認最多有5級 var parents = this._getParents(); for(var i = 0; i < parents.length; i++){ try{ if(parents[i].$.walk){ return parents[i]; } }catch(e){} } }, //獲取父窗口集合 _getParents : function(){ return [ window.parent.parent.parent.parent.parent, window.parent.parent.parent.parent, window.parent.parent.parent, window.parent.parent, window.parent, window ]; }, /** * 取當前url參數 */ getValueByUrl : function(name, defaultValue, url) { url = !(url) ? window.location.search : url; var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); var r = url.substr(1).match(reg); if (r != null) { return decodeURIComponent(r[2]); } return defaultValue; }, //獲取blockUI配置信息 getBlockDefaults : function(){ $.blockUI.defaults = { showOverlay : true, baseZ: 99999999, css : { padding : 2, left : '20%', top : '3%', color : '#000', border : 'none', backgroundColor : 'none', cursor : 'default' }, overlayCSS : { backgroundColor : '#000', opacity : 0.3, cursor : 'default' } }; return $.blockUI.defaults; }, /** * 取隨機數 */ getRandomParam : function() { var date = new Date(); return "" + date.getYear() + (date.getMonth() + 1) + date.getDate() + date.getHours() + date.getMinutes() + date.getSeconds() + date.getMilliseconds() + Math.floor(Math.random()*1000000); }, /** * 獲取uuid * len長度,可不傳,默認20 * radix基數,可不傳,默認30 * * $.walk.uuid() * */ uuid: function (len, radix) { len = len ? len : 20; radix = radix ? radix : 30; var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split(''); var uuid = [], i; radix = radix || chars.length; if (len) { // Compact form for (i = 0; i < len; i++) uuid[i] = chars[0 | Math.random()*radix]; } else { // rfc4122, version 4 form var r; // rfc4122 requires these characters uuid[8] = uuid[13] = uuid[18] = uuid[23] = '-'; uuid[14] = '4'; // Fill in random data. At i==19 set the high bits of clock sequence as // per rfc4122, sec. 4.1.5 for (i = 0; i < 36; i++) { if (!uuid[i]) { r = 0 | Math.random()*16; uuid[i] = chars[(i == 19) ? (r & 0x3) | 0x8 : r]; } } } return uuid.join(''); }, /** * 獲取請求URL * 調用示例:$.walk.getRequestURL($.walk.ctx + '/example', "queryList", "roleId=1&roleCode=2"); * @param baseUrl: 頁面訪問路徑,例如$.walk.ctx + '/example' * @param method:調用方法,例如:queryList * @param params:傳入參數,例如:roleId=1&roleCode=2 * @return */ getRequestURL : function(baseUrl, method, params, conditionFormId) { if(!baseUrl) return null; var url = baseUrl.startsWith(this.ctx) ? baseUrl : (this.ctx + "/" + baseUrl); var symbol = baseUrl.indexOf("?") > -1 ? "&":"?"; if (method != null) url += "/" + method; if (params) { if($.isJson(params)){ if(conditionFormId){ $.extend(params, this.getQueryParams(conditionFormId)) } url += symbol + $.param(params) + "&random=" + this.getRandomParam(); } else { url += symbol + params; if(conditionFormId){ url += "&" + $.param(this.getQueryParams(conditionFormId)); } url += "&random=" + this.getRandomParam(); } } else { url += symbol + "random=" + this.getRandomParam(); } return url; }, /** * 序列化指定區域 */ serializeArea : function(areaId){ var serializeStr = null; if(!areaId){ alert("請指定區域Id!"); return; } var area = $("#" + areaId); if(area.size() == 0){ alert("區域Id[" + areaId + "]不存在!"); return; } //如果指定區域是表單,則直接序列化 if(area.is("form")){ serializeStr = area.serialize() } else { serializeStr = $.param(area.find("input,select,textarea").serializeArray()); } return serializeStr; }, /** * 參數串轉json對象 */ param2json : function(param){ if(!param){ return {}; } var obj = {}; var pairs = param.split('&'); var name,value; $.each(pairs, function(i, pair) { pair = pair.split('='); name = decodeURIComponent(pair[0]); if(name){ value = decodeURIComponent(pair[1]); obj[name] = !obj[name] ? value :[].concat(obj[name]).concat(value);//若有多個同名稱的參數,則拼接 } }); return obj; }, /** * 將指定form參數轉換為json對象 */ getQueryParams : function (conditionAreaId, otherParams){ var queryParams = this.param2json(this.serializeArea(conditionAreaId)); //擴展額外參數 if(otherParams){ if($.isJson(otherParams)){ $.extend(queryParams, otherParams) } else if($.isString(otherParams)){ $.extend(queryParams, this.param2json(otherParams)) } } return queryParams; }, //獲取message信息 parseMessageJSON : function(resp){ var type = resp.find("#type").text(); var text = resp.find("#text").html(); return { type : type, text : text, isSuccess : type == "success", isInfo : type == "info", isWarning : type == "warning", isError : type == "error" }; }, //釋放iframe內存 clearFrameCache : function(iframe){ try{ iframe.src = ''; iframe.contentWindow.document.write(''); iframe.contentWindow.close(); if($.isIE()){ CollectGarbage(); CollectGarbage(); } }catch(e){} }, //查詢 queryList : function (gridId, conditionAreaIdOrParams, otherParams){ if(!gridId){ alert("請指定第一個參數,easyUI表格Id!"); return; } var queryParams = {}; if(conditionAreaIdOrParams){ if($.isJson(conditionAreaIdOrParams)){ $.extend(queryParams, conditionAreaIdOrParams) } else if($.isString(conditionAreaIdOrParams)){ queryParams = this.getQueryParams(conditionAreaIdOrParams, otherParams); } } var opts = { queryParams : queryParams, pageNumber : 1 }; var grid = $("#" + gridId); if(grid.hasClass("easyui-datagrid")){ grid.datagrid(opts); } else if(grid.hasClass("easyui-treegrid")){ grid.treegrid(opts); } }, /** * 綁定還未生成的元素事件并返回生成元素的ID * * $.walk.live("click", function(ele){ * //... * }); * $.walk.live("click", function(ele){ * //... * }, "div"); */ live: function (event, callback, scope) { scope = scope ? scope : "body"; var id = this.uuid(); var selector = "#" + id; $(scope).delegate(selector, event, function(){ callback($(selector)); }); return id; }, //驗證表單(form) validateForm : function (form){ var formValidator = form.attr("validXml"); var validate = $.parseJSON(formValidator); seajs.use(['$validate'], function(){ form.validate({ /* 設置驗證規則 */ rules: validate.rules, /* 設置錯誤信息 */ messages: validate.messages, /* 設置驗證觸發事件 */ focusInvalid: false, onkeyup: false, /* 設置錯誤信息提示DOM */ errorPlacement: function(error, element) { error.appendTo(element.parent()); } }); }); }, //模擬ajax方式提交form ajaxSubmit : function (formId, action, callbackFunc){ if(!formId){ alert("請指定formId!"); return; } var form = $("#" + formId); if(form.size() == 0){ //form無id有name也可 form = $("form[name='" + formId + "']"); if(form.size() == 0){ alert("form[" + formId + "]不存在!"); return; } } //第二個參數可能傳入回調函數 if(action && $.isFunction(action)){ callbackFunc = action; action = form.attr("action"); if(!action){ alert("請指定form[" + formId + "]action屬性!"); return; } } //開始提交 seajs.use(['$form','$validate'], function(){ var formValidator = form.attr("validXml"); if(formValidator && !form.valid()) return false;//校驗失敗返回 form.form('submit', { url: action, method : "post", onSubmit : function(){ $.walk.showLoading(); //如果后端一直未返回數據,10秒后隱藏遮罩層。 setTimeout(function(){ $.walk.hideLoading(); }, 10000); //jquery.form請求特殊標識 if(form.find("#JQUERY_FORM_AJAX_REQUEST").size() == 0){ form.append("<input id='JQUERY_FORM_AJAX_REQUEST' name='JQUERY_FORM_AJAX_REQUEST' value='true' style='display: none'/>"); } }, success : function(response) { $.walk.hideLoading(); var isMessageMethod = false; var resp = response; if(resp){ //后端調用了message.xxx方法 if(resp.indexOf('_MESSAGE_RESPONSE') > -1){ isMessageMethod = true; resp = $.walk.parseMessageJSON($(resp)); //如果消息類型錯誤直接彈出錯誤信息 // if(resp.isError == true){ // $.walk.alert(resp); // return ; // } } else { //嘗試轉成json try{ resp = $.parseJSON(resp); }catch(e){} } } //如果寫了回調函數,邏輯在回調函數里自處理,否則在后端調用了message.xxx方法后前臺自動彈出消息。 if(callbackFunc && $.isFunction(callbackFunc)){ callbackFunc.call(this, resp); } else { //后端調用了message.xxx方法后前臺自動彈出消息 if(isMessageMethod){ $.walk.alert(resp); } } } }); }); }, /* ajax局部刷新 * url: 請求url * params:參數 * partids:刷新區域ID,多個以逗號分隔 * callbackFunc:回調方法 */ ajaxRefresh : function(url, params, partids, callbackFunc) { if(params){ params._page_name = this.page; } $.ajax({ url : url, data : params, type : "POST", dataType : "html", cache: false, success : function(data){ if(partids) { var parts = partids.split(","); for(var i=0; i<parts.length; i++){ if(parts[i] && parts[i].trim()) { var partId = parts[i].trim(); //初始化jQuery.select2組件 if($.isIE9Under()){ $("#"+partId).replaceWith($(data).find("#"+partId)); } else { if($("#"+partId).hasClass("w-select2")){ seajs.use('$select2',function(){ $("#"+partId).select2("destroy"); $("#"+partId).replaceWith($(data).find("#"+partId)); $("#"+partId).select2(); }); } else { $("#"+partId).replaceWith($(data).find("#"+partId)); } } } } } if(callbackFunc && $.isFunction(callbackFunc)){ callbackFunc.call(this, data); } } }); }, //顯示遮罩層 showLoading : function (loadingTarget, top, left,iframeSrc){ seajs.use(['$blockui'], function(){ $.walk.getBlockDefaults(); top = top ? top:"50%"; left = left ? left:"50%"; iframeSrc = iframeSrc ? iframeSrc:""; var opts = { message : "<img src='" + $.walk.ctx +"/component/resources/images/loading/loading-4.gif'/>", width : "45px", css:{ top : top, left : left }, iframeSrc : iframeSrc, timeout : 5000 }; if (loadingTarget) {// 指定區域顯示加載中效果 opts.css.top = (loadingTarget.height()/2) - 32;//32是loading-4.gif高度的一半 loadingTarget.block(opts); } else {// 全頁面顯示加載中效果 $.blockUI(opts); } if($.isIE8Under()){ //ie6遮罩select $(".blockOverlay").bgiframe(); } }); }, //隱藏遮罩層 hideLoading : function(loadingTarget){ seajs.use(['$blockui'], function(){ if (loadingTarget) {// 指定區域隱藏加載中效果 loadingTarget.unblock(); } else {// 全頁面隱藏加載中效果 $.unblockUI(); } }); }, //創建iframe createDialogFrame : function(scrolling){ scrolling = scrolling ? scrolling:'no'; //使用iframe池,防止iframe占用內存過高 var dialogsIframePool = $("#dialogsIframePool"); if(dialogsIframePool.size() == 0){ $(document.body).append('<div id="dialogsIframePool" style="display:none"></div>'); dialogsIframePool = $("#dialogsIframePool"); } var freeFrames = dialogsIframePool.find("iframe[free='true'][scrolling='"+scrolling+"']"); if(freeFrames.size() == 0){ dialogsIframePool.append("<div class='dialogframediv' style='display: none;overflow:hidden;'><iframe free='true' class='dialogframe' scrolling='"+scrolling+"' frameborder='0' width='100%' height='100%' allowTransparency='true'></iframe></div>"); freeFrames = dialogsIframePool.find("iframe[free='true'][scrolling='"+scrolling+"']"); } var iframe = freeFrames.first(); iframe.attr('free','false');//標記 return iframe; }, //回收iframe recoveryDialogFrame : function(iframe){ this.clearFrameCache(iframe.get(0)); iframe.attr('free','true'); iframe.removeAttr($.walk.openerPageIdName); iframe.unbind("load"); $("#dialogsIframePool").append($("<div class='dialogframediv' style='display: none;overflow:hidden;'></div>").append(iframe)); }, //添加標簽頁 openTab : function(subtitle, url, icon){ return this.openTabById(this.getRandomParam(), subtitle, url, icon); }, //指定ID添加標簽頁 openTabById : function(subIdOrJson, subtitle, url, icon){ var subId = subIdOrJson; if($.isJson(subIdOrJson)){ subId = subIdOrJson.subId; subtitle = subIdOrJson.subtitle; url = subIdOrJson.url; icon = subIdOrJson.icon; } url = url.startsWith(this.ctx) ? url : (this.ctx + "/" + url); return $.walk.getTopWindow().addTab(subId, subtitle, url, icon); }, //默認關閉當前tab,指定了tabId,則按tabId關閉 closeTab : function(subId){ if(subId){ return $.walk.getTopWindow().closeTabById(subId); } else { return $.walk.getTopWindow().closeSelectedTab(); } }, //dialog方式打開url openUrlDialog : function(urlOrDialogJson, title, width, height, top, scrolling, onloadSuccess){ var url = urlOrDialogJson; if($.isJson(urlOrDialogJson)){ url = urlOrDialogJson.url; title = urlOrDialogJson.title; width = urlOrDialogJson.width; height = urlOrDialogJson.height; top = urlOrDialogJson.top; scrolling = urlOrDialogJson.scrolling; onloadSuccess = urlOrDialogJson.onloadSuccess; } url = url.startsWith(this.ctx) ? url : (this.ctx + "/" + url); $.walk.getTopWindow().$.walk._openUrlDialog(url, title, width, height, top, scrolling, onloadSuccess, this.getPageId()); }, //dialog方式打開url _openUrlDialog : function(url, title, width, height, top, scrolling, onloadSuccess, pageId){ var dialogframe = this.createDialogFrame(scrolling); var dialogframediv = dialogframe.parent(".dialogframediv"); dialogframediv.show(); var win = dialogframediv.window({ title: title ? title : "Dialog", width: (width || width == 0) ? width : 800, height: (height || height == 0) ? height : 400, top: (top || top == 0) ? top : 80, minimizable: false, modal: true, openAnimation : 'slide', closeAnimation : 'slide', onOpen : function(){ //加載效果... var loadingTarget = dialogframe.parents(".window"); $.walk.showLoading(loadingTarget, null, "45%"); setTimeout(function(){ $.walk.hideLoading(loadingTarget); }, 500); }, onClose : function(){ //回收iframe $.walk.recoveryDialogFrame(dialogframe); //銷毀window dialogframediv.window('destroy'); } }).window("hcenter"); //設置引用頁面ID及src url = this._wrapCas(url); url = url.indexOf('?') > -1 ? (url + "&random=" + this.getRandomParam()) :(url + "?random=" + this.getRandomParam()); dialogframe.attr($.walk.openerPageIdName, pageId); dialogframe.attr("src", url); dialogframe.unbind("load").bind("load", function(){ var contents = dialogframe.contents(); if(pageId){ contents.find("#pageContext").attr($.walk.openerPageIdName, pageId); } if(onloadSuccess){ //第一個對象為iframe窗口對象。第二個為iframe的document的jquery對象。第三個為easyui彈窗window對象 onloadSuccess(dialogframe.get(0).contentWindow, contents, win); } }); //返回頁面頂部 this.pageScrollTop(); }, //關閉彈窗 closeDialog : function(win){ var w = win; if(!w){ var parents = this._getParents().reverse(); for(var i = 0; i < parents.length; i++){ if(parents[i] && parents[i].$(".window:visible").size() > 0){ w = parents[i]; break; } } } w.$(".window:visible").last().find('.panel-tool-close').click(); }, //處理cas _wrapCas : function(url){ var pageContext = $("#pageContext"); var fromCas = pageContext.attr("fromCas"); if(fromCas == 'true'){ var urlRouteParameterName = pageContext.attr("urlRouteParameterName") ? pageContext.attr("urlRouteParameterName"):'_authenticator'; url += (url.indexOf('?') > -1 ? '&':'?') + urlRouteParameterName + '=cas'; var casSpecialParameterName = pageContext.attr("casSpecialParameterName"); var casSpecialParameter = pageContext.attr("casSpecialParameter"); if(casSpecialParameterName && casSpecialParameter){ url += (url.indexOf('?') > -1 ? '&':'?') + casSpecialParameterName + '=' + casSpecialParameter; } } return url; }, //datagrid:將選中行的數組轉換成以特殊符號分隔的字符串,分隔符默認逗號 checkeds2str : function(checkeds, idName, divide){ if(!divide) divide = ","; var ids = ""; $.each(checkeds, function(i, checked){ ids += eval("checked." + idName) + divide; }); return ids.substr(0, ids.length-1); }, //導出當前頁表格 exportData : function (url, queryParams, isAsyn){ //異步方式導出 if(isAsyn == true) { var promptTitle = "請輸入自定義導出文件名稱!"; this.prompt(promptTitle, function(val){ val = $.trim(val); if(!val){ $.walk.alert(promptTitle, "error"); return false; } if(queryParams) { //帶&符號的字符串參數 if($.isString(queryParams)){ queryParams += "&__actionType=asynExport&asynExportName=" + val; } //json參數 else if ($.isJson(queryParams)) { queryParams.asynExportName = val; queryParams.__actionType = 'asynExport'; } } else { queryParams = {asynExportName : val, __actionType : 'asynExport'} } $.ajax({ type : "POST", url : url, //提交的數據 data : queryParams, success : function(rsp, textStatus, request) { var exportId = request.getResponseHeader("asynExportId"); if(exportId){ //提示信息 $.walk.confirm('導出任務創建成功,流水:' + exportId + '<br>您可以進入菜單“我的導出”中查看導出進度。是否立即進入“我的導出”查看進度?', function(ok){ if(ok){ $.walk.openTab("我的導出", $.walk.ctx + "/common/exportLog/toPage?exportId=" + exportId); } }); } else { $.walk.alert("創建導出任務失敗!"); } } }); }); } //同步方式導出 else { this.confirm("確認導出嗎?", function(ok){ if(ok){ var hiddenElements = ""; if (queryParams) { //如果是帶&符號的字符串參數,轉換成json if($.isString(queryParams)){ queryParams = $.walk.param2json(queryParams); } //判斷是否是json else if ($.isJson(queryParams)) { var _params = $.extend({}, queryParams); //轉換成元素 for (var key in _params) { hiddenElements += '<input type="hidden" name="' + key + '" value="' + _params[key] + '"/>'; } } } //提交導出 $('#tempDiv').remove(); $("<div id='tempDiv'><iframe name='IF_4down'></iframe></div>").appendTo($(document.body)).css('display', 'none').append('<form id="tempForm" action="' + url + '" target="IF_4down" method="post" accept-charset="UTF-8">' + hiddenElements + '<input type="hidden" name="__actionType" value="export"/></form>'); document.charset = "UTF-8"; $("#tempForm").submit().remove(); } }); } }, //導出當前頁表格 exportCurrentPage : function (exportName, table){ this.confirm("確認導出嗎?", function(ok){ if(ok){ $("<div id='expTemp'></div>").appendTo($(document.body)); $('#expTemp').css({'position': 'absolute','top': '-9000px'}); $("#expTemp").append('<iframe name="IF_4down"></iframe>').append('<form id="exportform" action="'+$.walk.ctx+'/fileserver/exportCurrentPage" method="post" target="IF_4down"><input type="hidden" id="pData" name="pData"/><input type="hidden" id="exportName" name="exportName"/></form>'); $("#pData").val("<table>" + table.html() + "</table>"); $("#exportName").val(exportName); $("#exportform").submit().remove(); $('#expTemp').remove(); } }); }, //返回頁面頂部 pageScrollTop : function (){ this.getTopWindow().$("html, body").animate({scrollTop:"0px"}, 400); }, //獲取引用本頁面的iframe的jquery對象。 getOpenerIframe : function(){ var iframe; $("iframe", parent.document).each(function(){ if($(this).get(0).contentWindow == window){ iframe = $(this); return false; } }); return iframe; }, //獲取當前頁面ID getPageId : function(){ return $("#pageContext").attr($.walk.pageIdName); }, //獲取引用頁面ID getOpenerPageId : function(){ var openerPageId = $("#pageContext").attr($.walk.openerPageIdName); if(!openerPageId){ openerPageId = this.getOpenerIframe().attr($.walk.openerPageIdName); } return openerPageId; }, //獲取創建本窗口的引用窗口 openerWindow : function(){ return this.getWindowById(this.getOpenerPageId()); }, //根據pageId路徑獲取目標window對象 getWindowById : function(pageId){ var topPageId = this.getTopWindow().$.walk.getPageId(); if(pageId && topPageId && topPageId == pageId){ return this.getTopWindow(); } return this._getWindowById(this.getTopWindow(), pageId); }, //根據pageId路徑獲取目標window對象 _getWindowById : function(startWindow, pageId){ if(!pageId){ return undefined; } var targetWin; var pageIdArr = pageId.split('.'); var isFinded = false; startWindow.$("iframe").each(function(){ var tabframe = $(this); var pageContext = tabframe.contents().find("#pageContext"); var pageId = pageContext.attr($.walk.pageIdName) + ""; if(pageId.indexOf(pageIdArr[0]) > -1){ isFinded = true; targetWin = pageContext.get(0).parentNode.parentNode.parentNode.defaultView; return; } }); if(isFinded && pageIdArr.length > 1){ pageIdArr.shift(); var newPageId = pageIdArr.join('.'); targetWin = this._getWindowById(targetWin, newPageId); } return targetWin; }, //每個頁面標記頁面ID //生成規則:父頁面ID+本頁面ID。父頁面不包括頂級頁面 _generatePageId : function (){ var parentPageId; if(window.parent != $.walk.getTopWindow()){ parentPageId = $(window.parent.document).find("#pageContext").attr($.walk.pageIdName); } var newPageId = "p" + $.walk.getRandomParam(); var currPageId = parentPageId ? (parentPageId + "." + newPageId):newPageId; if(!$("#pageContext").attr($.walk.pageIdName)){ $("#pageContext").attr($.walk.pageIdName, currPageId); } //記錄引用頁面 var topPageId = $.walk.getTopWindow().$.walk.getPageId(); if(parentPageId && parentPageId != topPageId){ if(!$("#pageContext").attr($.walk.openerPageIdName)){ $("#pageContext").attr($.walk.openerPageIdName, parentPageId); } } }, //比較兩個純json對象是否相等,對象中不能有數組 comparePlainJSON : function (json1, json2){ var a = JSON.stringify(json1) == JSON.stringify($.extend($.extend({}, json1), json2)); var b = JSON.stringify(json2) == JSON.stringify($.extend($.extend({}, json2), json1)); return a == true && b == true; } }; })(jQuery); ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看