2009-08-04 80 views
2

我尝试使用javascript和window.open()函数打开多个浏览器窗口。我想通过查询字符串参数传递给我的新窗口是这样的:查询字符串参数似乎不适用于window.open

window.open('http://www.myfoo.com/foopage.aspx?fooparm=1', '_blank'); 

这将打开一个新的窗口,在地址栏中输入正确的地址,但浏览器显示404未找到。但是,如果我在新窗口中按Enter键,页面会正确加载。

带着几分试验和错误,我发现,使用window.open没有查询字符串参数完美的作品:

window.open('http://www.myfoo.com/foopage.aspx', '_blank'); 

是否有限制,我应该知道window.open和查询字符串参数? 是否有另一种方法将参数传递到新窗口中的新页面?

非常感谢您提前了解您的洞察力。

(注:此脚本生成的服务器端的C#和注入使用Ajax的ScriptManager.RegisterStartupScript页。)肯定

回答

3

我发现为什么今天上午:

在web.config中,在全球化的今天,是的ResponseEncoding设置为 “cp037”。我将其更改为“ISO-8859-15”,并且我的窗口正常弹出。

<globalization fileEncoding="ISO-8859-15" requestEncoding="ISO-8859-15" responseEncoding="ISO-8859-15" culture="auto" uiCulture="auto"/> 
0

一两件事:限制不依赖于window.open()的预SE 。我的服务器运行mod_perl,并且经常在window.open()中使用GET请求。

0

尝试

window.open("javascript:window.location='http://www.myfoo.com/foopage.aspx?fooparm=1'", "_blank"); 
+0

对不起,我只是想这和我有同样的结果,因为我有。 – 2009-08-04 17:51:15