javascript跨域重新整理父視窗並關閉當前視窗問題

來源:互聯網
上載者:User

 問題:在門戶上登入,用webservices做了待辦,待辦在發送後不能重新整理父視窗,報指令碼錯誤。

 相關代碼如下:

window.parent.opener.location.reload(); window.parent.close();

解決:

經過測試發現window.parent.opener.location時,取不到對象,無法執行reload()

修改為:

try{ window.parent.opener.location.reload(); window.parent.close(); }catch(e){ //portal為要重新整理父頁面的地址 window.parent.opener.location="<%=portal%>"; window.parent.opener=null; window.parent.close(); }

原因:

此問題主要是因為伺服器跨域引起的,即兩個頁面不在同一個伺服器中,在子頁面,無法取到父頁面的location的值,

但可以通過window.parent.opener.location指定位置,

參考文章:

http://www.cnblogs.com/aming/archive/2008/11/03/1325197.html

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.