程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> JSP編程 >> 關於JSP >> iframe中訪問easyui的jsp頁面時腳本的正確寫法

iframe中訪問easyui的jsp頁面時腳本的正確寫法

編輯:關於JSP

       很多初學Easyui的人都會遇到這樣的問題,那就是在頁面中采用iframe標簽後,當直接指定src頁面是一個采用了easyui組件的頁面,當parent窗口需要訪問iframe中的對象時,不應該采用document的訪問,而應該訪問iframe的對象,這樣才能用easyui中的標准api訪問對象的屬性和方法,具體訪問方法如下兩種:

      1、document.getElementById('ss_frame').contentWindow.$('#dgMANUF').datagrid('getSelected');

      2、$.find('iframe')[0].contentWindow.$('#dgMANUF').datagrid('getSelected');

      請不要使用$('#ss_frame').contentWindow.$('#dgMANUF').datagrid('getSelected');這樣的代碼,因為在JQuery中無法正確返回對象,系統會提示“無法獲取屬性“nodeName”的值: 對象為 null 或未定義 Error”之類的錯誤。

      訪問對象的問題解決以後就會帶來另外一個問題,iframe的刷新問題,因為可能大家會采用動態頁面,我們看到很多解決方案說只要將對象的src修改就可以正確顯示,但是我們發現系統會有一個延遲,而這對於腳本客戶端會有致命的錯誤。解決的方法其實很簡單,那就是直接讓iframe的對象輸出一個提示,直到頁面加載完畢。具體解決代碼如下:

      document.getElementById('ss_frame').contentWindow.document.write('loading...');

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved