泰仔在線

          java學習,心情日記,繽紛時刻
          posts - 100, comments - 34, trackbacks - 0, articles - 0

          js共通報錯

          Posted on 2006-11-09 11:11 泰仔在線 閱讀(1865) 評論(0)  編輯  收藏 所屬分類: 網上沖浪Java 相關Javascript

             最近一個項目應日本客戶的需求,我們在其中添加了一個共通報錯的模塊,對前后臺的各種提示信息進行收集,并進行統一的處理,顯示給系統的用戶。
             這個模塊,主要思想就是利用前臺頂層頁面的一個js數組,將提示信息都收集起來,然后再按照要求進行顯示。前臺的收集肯定就不用說了,后臺的收集我這里是將后臺的提示信息先保存在request里面,到達頁面后再利用標簽轉存到js數組里,最后進行統一的呈現。這個過程中由于js經驗的不足,走了一些彎路,因此把它記錄下來,作為以后繼續學習的基礎。
             這里是開始調試的一些代碼:
          //添加錯誤message打印到頁面
          function showMsgWindow(obj){
           var pagePath = window.top.TGlobals.webRoot + "/pages/common/msgShow.jsp";
           showModelessDialog(pagePath,obj,"dialogTop:200px;dialogLeft:200px;dialogHeight:400px;dialogWidth:700px;status:no;edge:sunken; ");
          }

          //定義Message數據結構
          function msgObj(msgname, msgkey, msgvalue) {
           this.msgname = msgname;
           this.msgkey = msgkey;
           this.msgvalue = msgvalue;
           
           msgObj.prototype.getname = function() {
            return this.msgname;
           }
           
           msgObj.prototype.getkey = function() {
            return this.msgkey;
           }
           
           msgObj.prototype.getvalue = function() {
            return this.msgvalue;
           }
          }

          //去空
          function zNull(str) {
           if (str.length < 1) {
            str = "&nbsp";
           }
           return str;
          }

          function errorMsgWindow(){
           var obj = window.top.errorMsg;
           if (obj.length > 0) {
            showMsgWindow(obj);
            clearErrorMessage();
            return false;
           }
           return true;
          }

          //根據參數對Message進行初始化
          function pushErrorMessage(){
           var strobj = new msgObj();

           if (arguments.length >= 3) {  
            strobj = new msgObj(zNull(arguments[0]), zNull(arguments[1]), zNull(arguments[2]));
           } else if (arguments.length == 2) {
            strobj = new msgObj(zNull(arguments[0]), zNull(arguments[1]), "&nbsp");
           } else {
            return false;
           }
           window.top.errorMsg.push(strobj);
          }

          function clearErrorMessage(){
           window.top.errorMsg = new Array();
          }
             事實證明這里有幾個地方是有點問題的,一般調用好像不會出現,但用的范圍廣一些就會有感覺了。

          主站蜘蛛池模板: 柯坪县| 太仆寺旗| 封丘县| 喀什市| 玉环县| 巴彦淖尔市| 辽阳市| 土默特左旗| 临湘市| 中卫市| 民权县| 陆丰市| 峨眉山市| 锡林浩特市| 日照市| 新郑市| 博罗县| 宁陵县| 霍邱县| 贵溪市| 永丰县| 永定县| 东城区| 湾仔区| 定西市| 来凤县| 安国市| 两当县| 平潭县| 陇西县| 沙洋县| 青龙| 密山市| 中宁县| 宝清县| 德兴市| 太白县| 文化| 顺平县| 临清市| 太康县|