javascript - 查询字符串参数似乎不适用于 window.open

标签 javascript parameters query-string

我尝试使用 javascript 和 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 注入(inject)到页面中。)

最佳答案

今天早上我找到了原因:

在 web.config 中,在全局化下,responseEncoding 设置为“cp037”。我将其更改为“ISO-8859-15”,我的窗口正确弹出。

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

关于javascript - 查询字符串参数似乎不适用于 window.open,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1227126/

相关文章:

iphone - 如何将关键字#define 生成的常量值作为参数传递给方法?

url - 在REST URI中使用什么空间?

javascript - $route 不适用于搜索 url

javascript - 在提交之前在 javascript 中加密密码是否有意义?

javascript - AngularJS 过滤器功能解释

javascript - Rxjs 在 Observable 出错后传递数据

c# - 如何在 C# 的表单应用程序中输出参数?

vb.net - 使用 ParamArray,但至少需要一个参数

java - 如何使用 Jersey 将 POJO 序列化为查询参数

url - 通过查询字符串发送逗号分隔参数的替代方法