台灣最大程式設計社群網站
線上人數
794
 
會員總數:241867
討論主題:187137
歡迎您免費加入會員
討論區列表 >> ASP.NET >> 關於 window.showModalDialog的方式 改寫
[ 變換順序 ]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
關於 window.showModalDialog的方式 改寫
價值 : 50 QP  點閱數:145 回應數:8

樓主

芋頭
初學者
247 444
2916 437
發送站內信

各位大大好
為了要強制開新視窗時(視窗B的主要程式都寫在CS端(例如gridview radioButtion等等)),必須要操作完才能回到主畫面
目前是使用window.showModalDialog的方式,但是除了IE之外,其他瀏覽器都不支援。
最近有嘗試用Jquery dialog的方式(已經使用updatePane包起來,但postback都會閃一下),
請問針對視窗B,必須全部改成ajax的方式重寫才能解決嗎?
還是有其他比較簡單的建議
謝謝~~~

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

topcat
捐贈 VP 給 topcat 檢舉此回應
小喵自己是使用Bootstrap的Modal
可以鎖定背景

至於PostBack閃的問題∼
最簡單的,用UpdatePanel把整個Modal包起來就可以

您參考看看

https://segmentfault.com/q/1010000006174958

^_^
本篇文章回覆於2018-02-02 12:16
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
回應

topcat
捐贈 VP 給 topcat 檢舉此回應
補充
用Bootstrap的Modal,那麼,就沒必要寫成兩支aspx
寫在一個畫面中就好

這樣傳遞資料的問題也可以輕鬆處理(就在自己頁面中)
^.^a
本篇文章回覆於2018-02-02 12:18
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
把元件放在panel上 隱藏起來 按鈕按下去再呈現 不是更簡單
本篇文章回覆於2018-02-02 16:36
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

芋頭
檢舉此回應

我也有想過用DIV或是PANEL的方式,但主要是需要控制一定要完成"子網頁裡面的東西"才能繼續往下走下去
DIV或是PANEL 好像做不到==
本篇文章回覆於2018-02-02 16:54
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
回應

topcat
捐贈 VP 給 topcat 檢舉此回應

我也有想過用DIV或是PANEL的方式,但主要是需要控制一定要完成"子網頁裡面的東西"才能繼續往下走下去
DIV或是PANEL 好像做不到==


不會唷
可以做到
小喵寫個小小的範例:
aspx

aspx.vb


執行看看~
想想看~

^_^
本篇文章回覆於2018-02-02 21:18
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
回應

Forevertim
檢舉此回應
是不要PostBack還是??
是PostBack後,Dialog內的值抓不到??

為了要強制開新視窗時(視窗B的主要程式都寫在CS端(例如gridview radioButtion等等)),必須要操作完才能回到主畫面

要簡單一點的,可以用Table放在畫面中間,然後隱藏,要用時呼叫Table並將Table之外的Enable起來,最後Table完成後,畫面Function或重新載入刷新。
本篇文章回覆於2018-02-05 09:26
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
作者回應

芋頭
檢舉此回應
謝謝各位回答
topcat大的方式可以做到window.showModalDialog的功能,只是整個畫面在點選SHOW出子畫面後 後面都會消失(母DIV 會disable)(變白白的),然後再enalbe

本篇文章回覆於2018-02-05 10:57
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
8樓
回應

topcat
捐贈 VP 給 topcat 檢舉此回應
其實,要搭配Bootstrap的Modal也是可以的
1.鎖定背景不能操作,
2.Modal中持續動作,直到按下Modal中的完成,才能繼續
這些都是可以做到的
就算沒有用UpdataPanel(畫面會閃)

幾個關鍵
1.Modal中,限制背景不能點,語法如下:


2.在CodeFile(aspx.vb)中
用個變數statusModalShow狀態來記錄是否要顯示Modal
當他是True,就把1.的內容註冊到ClientScript的StartupScript

3.用ViewState來記錄狀態

相關程式如下:

aspx:




aspx.vb




提供參考

^_^
本篇文章回覆於2018-02-05 18:05
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
[ 變換順序 ]   
1

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