成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

使用js callback機制實現(xiàn)調(diào)用頁面局部刷新

開發(fā)
需求描述:審批表單頁面由我的待辦工作中打開,辦理完畢后希望關(guān)閉該頁面并且實現(xiàn)我待辦表格的實時刷新;同時該需求也同樣適用于從某些工作流管理模塊中需要發(fā)起審批的情況,比如招聘需求模塊中發(fā)起錄用流程;我的績效管理中審批績效等。

需求描述:審批表單頁面由我的待辦工作中打開,辦理完畢后希望關(guān)閉該頁面并且實現(xiàn)我待辦表格的實時刷新;同時該需求也同樣適用于從某些工作流管理模塊中需要發(fā)起審批的情況,比如招聘需求模塊中發(fā)起錄用流程;我的績效管理中審批績效等。

使用js callback機制實現(xiàn)調(diào)用頁面局部刷新

我們先來看看之前的實現(xiàn),該邏輯實現(xiàn)的功能是,從我待辦列表中發(fā)起審批,審批結(jié)束后直接在當(dāng)前頁面,也就是審批頁面跳轉(zhuǎn)至一個新的oa主頁面,并且打開我的工作-我待辦的頁簽,實現(xiàn)方法如下:

  1. $("#but_back").bind("click", function() { 
  2.         window.top.opener=null
  3.         var url = window.location.href; 
  4.         var isoa=url.indexOf('phicomm.com'); 
  5.         //var isoatest=url.indexOf('oatest.phicomm.com'); 
  6.         var curWwwPath=window.document.location.href;  
  7.         var pathName=window.document.location.pathname;  
  8.         var pos=curWwwPath.indexOf(pathName);  
  9.         var localhostPaht=curWwwPath.substring(0,pos);  
  10.         var projectName=pathName.substring(0,pathName.substr(1).indexOf('/')+1); 
  11.         if(isoa>0){ 
  12.             window.top.open(localhostPaht+'/main/index.action?tableName=mywork','_self'); 
  13.         }else
  14.             window.top.open(localhostPaht+projectName+'/main/index.action?tableName=mywork','_self'); 
  15.         } 
  16.     }); 

 

桌面js的處理邏輯:

 

  1. $(document).ready(function($){ 
  2.     // 初始化圖標(biāo) 
  3.     initModules(initMenus()); 
  4.       
  5.     refixAppPos(); 
  6.     // 注冊事件 
  7.     regClick(); 
  8.       
  9.     sortable(); 
  10.    initIcoRemove(); 
  11.       
  12.     initAppManager(); 
  13.     //解析當(dāng)前URL判斷是否需要跳轉(zhuǎn)制定Table 
  14.     gotoTable(); 
  15. }); 
  16.   
  17. //跳轉(zhuǎn)制定Table 
  18. function gotoTable(){ 
  19.     var tableName = request("tableName"); 
  20.     if(""!=tableName&&null!=tableName&&'undefined'!=tableName){ 
  21.         openUrl($("#desktop_content_icon_"+tableName)); 
  22.     } 

 以上方法雖然實現(xiàn)了辦理結(jié)束后跳至我的待辦的功能,但有以下缺陷:

跳轉(zhuǎn)是在新頁面中,并非在調(diào)用頁面,這樣就形成了調(diào)用和跳轉(zhuǎn)頁面兩個相同的桌面;

新的頁面并非與原調(diào)用頁面完全一致,調(diào)用頁面如打開多個頁簽,新打開的頁面相當(dāng)于將除我的待辦外的其他頁簽關(guān)閉,并不符合用戶的需求;

用戶體驗不友好

我們使用js callback的實現(xiàn)如下,當(dāng)前頁面的調(diào)用頁面非空且未關(guān)閉時,我們就直接調(diào)用頁面中的js方法實現(xiàn)其局部的刷新。

  1. /** 刷新父窗口關(guān)閉彈出窗口 */ 
  2.     function refreshAndClose(){ 
  3.         var jscallback = $.trim($("#jscallback").val()); 
  4.         var type = $.trim($("#type").val()); 
  5.         if (window.opener  && !window.opener.closed && jscallback!=null && jscallback!="") { 
  6.             if(!type){ 
  7.                 //本頁面的調(diào)用頁面執(zhí)行其嵌入或調(diào)用的js方法 
  8.                 eval("window.opener."+jscallback+"();"); 
  9.             } 
  10.             window.close();//當(dāng)前頁面關(guān)閉 
  11.         } else { 
  12.             window.top.opener=null
  13.             var url = window.location.href; 
  14.             var isoa=url.indexOf('phicomm.com'); 
  15.               
  16.             var curWwwPath=window.document.location.href;  
  17.             var pathName=window.document.location.pathname;  
  18.             var pos=curWwwPath.indexOf(pathName);  
  19.             var localhostPaht=curWwwPath.substring(0,pos);  
  20.             var projectName=pathName.substring(0,pathName.substr(1).indexOf('/')+1); 
  21.             if(isoa>0){ 
  22.                   
  23.                 window.top.open(localhostPaht+'/main/index.action?tableName=mywork','_self'); 
  24.             }else
  25.                 window.top.open(localhostPaht+projectName+'/main/index.action?tableName=mywork','_self'); 
  26.             } 
  27.         } 
  28.     }

調(diào)用頁面js:grid即為需要局部刷新的表格。 

  1. function openUrl(url){ 
  2.     url=url+"&jscallback=callsus" 
  3.          window.open(url,'_blank');    
  4. function callsus(){ 
  5.     $('#performanceDataGrid').reload(); 
  6. }

通過js callback實現(xiàn)了調(diào)用頁面的局部刷新,并對其他應(yīng)用的類似功能具有一定的指導(dǎo)和參考意義。

本文出自 “南湖礦工技術(shù)空間” 博客,請務(wù)必保留此出處http://jncumter.blog.51cto.com/812546/1623739

責(zé)任編輯:王雪燕 來源: 南湖礦工技術(shù)空間
相關(guān)推薦

2015-10-22 10:59:13

ListViewItem刷新

2009-08-04 14:44:40

callback實現(xiàn)機ASP.NET2.0

2021-09-10 15:13:41

鴻蒙HarmonyOS應(yīng)用

2015-05-13 09:36:18

js模擬手機下拉刷新

2021-03-12 16:25:17

技巧vue頁面刷新

2012-04-12 10:19:08

Ajax.NET

2010-10-08 12:06:40

聯(lián)動菜單JavaScript

2021-06-03 08:03:13

網(wǎng)絡(luò)

2021-05-05 11:36:31

Node前端自動化熱重載頁面

2017-05-02 22:38:44

前端開發(fā)JS事件循環(huán)機制

2023-06-12 15:37:38

鴻蒙ArkUI

2011-07-15 09:57:03

MongoDB緩存刷新

2017-04-12 11:46:46

前端瀏覽器渲染機制

2013-12-02 15:25:38

jQuery插件

2021-12-08 06:53:28

Choreograph屏幕機制

2021-06-18 10:12:09

JS代碼前端

2015-11-20 11:20:54

js開發(fā)

2021-05-07 09:35:30

鴻蒙HarmonyOS應(yīng)用

2021-12-10 00:01:53

Vsync信號機制

2009-09-23 17:28:55

Hibernate C
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 国产成人99久久亚洲综合精品 | 综合色站导航 | 黄免费在线 | 日韩av第一页 | 91在线免费视频 | 成人性生交大免费 | 国产精品久久久久久久久久 | 一区二区三区视频在线 | 蜜臀久久99精品久久久久野外 | 亚洲网站在线观看 | 欧美视频二区 | 国产精品视频偷伦精品视频 | 国产精品污www在线观看 | 又黄又爽的网站 | 国产亚洲一区精品 | 精品综合久久久 | 精品视频一区二区三区四区 | 美女福利视频一区 | av中文字幕在线 | 亚洲欧美综合精品久久成人 | 欧美精品久久久久久久久老牛影院 | 国产精品久久久久久久久久 | 成人免费一区二区三区牛牛 | 国产精品成人一区二区 | 日韩毛片免费看 | av网站免费在线观看 | 国产高清在线精品一区二区三区 | 亚洲视频免费在线播放 | 亚洲一区二区三区高清 | 91色啪| 在线看片国产精品 | 国产一区高清 | 日韩精品成人 | 中文字字幕一区二区三区四区五区 | 精产国产伦理一二三区 | 高清欧美性猛交xxxx黑人猛交 | 国产成人在线一区二区 | 欧美天堂 | 国产一区二区高清在线 | 午夜成人在线视频 | 日韩中字幕|