8
當我們執行window.open()
時,是否有指定method = POST
的選項?由於默認情況下,它是GET
?如何在window.open()中POST POST()
我想要的是這個。父窗口有一些表單參數(數量很多),並且應該通過window.open()
發送到服務器。使用查詢字符串將其全部追加到GET
網址中並不是一個好主意。
當我們執行window.open()
時,是否有指定method = POST
的選項?由於默認情況下,它是GET
?如何在window.open()中POST POST()
我想要的是這個。父窗口有一些表單參數(數量很多),並且應該通過window.open()
發送到服務器。使用查詢字符串將其全部追加到GET
網址中並不是一個好主意。
您可以使用window.open()
打開一個帶有名稱的空窗口。然後,您可以使用<form>
,並在其中引用新窗口名稱的「目標」屬性,然後發佈它。
編輯確定這裏的想法。您在網頁上的表單,它可以隱藏:
<form id='theForm' method='post' action='/your/action' target='TheNewWindow'>
<input type='hidden' name='param_1' value='whatever'>
</form>
那麼你得到的結果到窗口是這樣的:
window.open('about:blank', 'TheNewWindow');
document.getElementById('theForm').submit();
確保您使用的窗口名稱是有效的標識符(如JavaScript變量名稱),否則IE將會變得不安。
Here是一個jsfiddle。
你能不能詳談一下?也許是一個小代碼示例? – Victor 2011-05-23 17:00:25
@Kaushik是的,我現在正在進行一個小測試...我想確保我知道詳細信息:-) – Pointy 2011-05-23 17:13:33
謝謝。這對我來說不起作用,因爲這會一直打開一個新窗口。但我忘了提及,只有點擊某個特定的按鈕時,我才需要新的窗口,否則,同一個窗口。但是,謝謝你的努力,我會接受這個答案 – Victor 2011-05-23 17:43:34