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