摘要:[PHP、JavaScript]window.open 傳值
在這篇分享裡說展示了( a.php → b.php )的方法。
window.open並且傳值這個問題卡了我大約四個小時左右...在網路上撈出了不少方法,大約都是在2006~2007的老文章,也罷,根據程式的邏輯一個一個的試試看...
但是我發現一個很嚴重的問題,大多數提供的方法都會導致網頁無法自己拉頁面大小(resize),縱然在JavaScript裡面設定了寬、高,但是瀏覽器還是不為所動...於是我最後往外國網站撈資料,發現了一招很不錯的方法,而且我在測試後很正常(IE8)。
首先,我們定義兩個網頁,父網頁我們稱他a.php,子網頁我們稱他b.php。
接著我們修改a.php的form:
1 <form id="form1" name="form1" action="./b.php" target="newWin" method="post" enctype="multipart/form-data" onsubmit="newWindow();">
接著在a.php裡面加入名為newWindow()這個Function:
1 function newWindow() {
2 window.open('', "newWin", "resizable=1,scrollbars=1,width=600,height=800");
3 if (window.focus) {
4 newwindow.focus()
5 }
6 return false;
7 }
2 window.open('', "newWin", "resizable=1,scrollbars=1,width=600,height=800");
3 if (window.focus) {
4 newwindow.focus()
5 }
6 return false;
7 }
然後修改在b.php裡面加入resizeWindow()的Function:
1 function resizeWindow(){
2 window.resizeTo(1000,800)
3 }
2 window.resizeTo(1000,800)
3 }
大功告成!不過問題又來了...子頁面怎麼把資料傳回父頁面(a.php ←→ b.php)?這東西我就要在研究一下了