在專案中遇到過此問題,不過已經解決了,今天才發現這篇文章,就轉貼上來了
如果在母視窗要用 window.showmodaldialog() 來開啟子視窗的話,
就不能在子視窗使用 window.opener 屬性來訪問母視窗 (文法很怪,但我不知道怎麼用文字描述比較好... )
我只想到下面這個解法,您參考看看。
首先,showmodaldialog() 的用法如下 (from msdn):
vreturnvalue = window.showmodaldialog(surl [, varguments] [, sfeatures])
由上得知這個 method 共有三個 input 引數,分別是 surl, varguments 與 sfeature,除了 surl 為目標網頁必須填寫之外,後兩個皆非必要引數。
我的想法是,您在母視窗要使用 showmodaldialog() 來開啟乙個子視窗時,將準備接收值的物件 (myobj) 帶進 varguments,子視窗只要取出該物件即取得母視窗中 myobj 的參照
這樣一來,您就可以直接對該物件進行操作,就跟您直接在母視窗中操作 myobj 是一樣的。
呃,上面的敘述好像還是很難懂... ?我附上兩個 html 來舉例好了...
請分別將兩段程式存檔,若檔名不是 aa.htm 與 bb.htm 的話請自行修改相關名稱。
這是母視窗 aa.htm
接下來是子視窗 bb.htm
程式流程就是,由 aa.htm 開啟 bb.htm,操作者在 bb.htm 輸入資料後按下送出鍵,該資料即顯示在 aa.htm 中。
showModalDialog引數詳解
showmodaldialog ie 4 支援 showmodelessdialog ie 5 支援 window.showmodaldialog 方法用來建立乙個顯示html內容的模態對話方塊。window.showmodelessdialog 方法用來建立乙個顯示html內容的非模態對話方塊。使...
showModalDialog相關問題
最近大量地用到了模式視窗,也遇到了不少問題,特總結於此,方便自己日後查閱,若能幫到他人,那就更好了。一 基本使用 語法 vreturnvalue window.showmodaldialog surl varguments sfeatures 引數說明 surl 指定對話方塊要顯示的url。varg...
showModalDialog引數詳解
基本介紹 showmodaldialog ie 4 支援 showmodelessdialog ie 5 支援 window.showmodaldialog 方法用來建立乙個顯示html內容的模態對話方塊。window.showmodelessdialog 方法用來建立乙個顯示html內容的非模態對...