[PHP、JavaScript]window.open 傳值

摘要:[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:

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  }

 

然後修改在b.php裡面加入resizeWindow()的Function:

1  function resizeWindow(){
2    window.resizeTo(1000,800)
}

大功告成!不過問題又來了...子頁面怎麼把資料傳回父頁面(a.php ←→ b.php)?這東西我就要在研究一下了

延伸閱讀:[PHP、JavaScript]window.open 傳值 part2