台灣最大程式設計社群網站
線上人數
570
 
會員總數:245113
討論主題:189027
歡迎您免費加入會員
討論區列表 >> ASP.NET >> 關於CHROME中使用window.open取代showModalDialog
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
關於CHROME中使用window.open取代showModalDialog
價值 : 5 QP  點閱數:77 回應數:4

樓主

Nat
門外漢
0 1
16 2
發送站內信

請問各位先進,
小弟在將window.open取代showModalDialog時
開啟子視窗是沒有問題,
但子視窗回傳值給父視窗時,
出現Uncaught TypeError: Cannot read property 'document' of null,
請問這是什麼問題呢?




搜尋相關Tags的文章: [ window.opener ] , [ showModalDialog ] ,
本篇文章發表於2019-11-06 14:50
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
回應

topcat
捐贈 VP 給 topcat 檢舉此回應
建議您把程式碼貼出來
我們才能從您貼出的程式碼中
評估出可能的情況


在沒有程式碼的情況下,只能說,你的寫法有問題
至於什麼問題
看到後才有辦法跟您說

^.^a
本篇文章回覆於2019-11-07 09:24
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

Nat
檢舉此回應
謝謝大大,
我想我找到原因了,
原因是我使用window.open的URL時,
有先連上一個網頁再指向到我的子網頁,
其程式如下

var intValue = window.open("SW_NIDS.aspx?strUrl=" + strUrl + "&strTitle=" +strTitle,"","help:no;dialogHeight: 600px; dialogWidth: 1024px;status: No;");


改成下列方式就可以正常使用opener了
var intValue = window.open(strUrl "","help:no;dialogHeight: 600px; dialogWidth: 1024px;status: No;");
本篇文章回覆於2019-11-07 15:29
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

topcat
捐贈 VP 給 topcat 檢舉此回應
順道提醒一下
window.open的方式,比較容易被視為廣告而被瀏覽器封鎖(快顯封鎖)

小喵個人建議的方式是:
如果內容不複雜,其實寫在同一頁(母子視窗),透過div runat=server,搭配visiable=true/false來達到類似彈跳視窗的效果
如果搭配Bootstrap的Modal,效果更好
而且更好撰寫與維護

提供您參考
^_^
本篇文章回覆於2019-11-07 15:42
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

Nat
檢舉此回應
好的,謝謝大大,我研究看看
本篇文章回覆於2019-11-12 13:20
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.