javascript - 在 Javascript 中转义双连字符?

标签 javascript iis url

我有一个 Javascript 小书签,当点击它时,会将用户重定向到一个新网页并提供旧网页的 URL 作为查询字符串中的参数。

当原始网页的 URL 中有双连字符(例如 page--1--of--3.html)时,我遇到了问题。愚蠢,我知道 - 我无法控制原始页面 我正在使用的 javascript escape 函数不会转义连字符,如果要求服务 ,IIS 6 会给出找不到文件的错误resource.aspx?original=page--1--of--3.html

我可以使用替代的 javascript 转义函数吗?解决这个问题的最佳方法是什么?有谁知道为什么 IIS 在 resource.aspx?original=page--1 而不是 page-1 上阻塞?

最佳答案

“escape”和“unes​​cape”之所以被弃用,正是因为它没有对所有相关字符进行编码。 不要使用 ESCAPE 或 UNESCAPE。请改用“encodeURIComponent”和“decodeURIComponent”。除了最古老、最破旧的浏览器外,所有浏览器都支持。这种知识并不普遍,真是太可惜了。

(另见 encodeURI 和 decodeURI)

编辑:错误刚刚测试过,但这并没有真正涵盖双连字符。对不起。

关于javascript - 在 Javascript 中转义双连字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1005108/

相关文章:

wcf - 允许基于 web.config 中设置的组访问 WCF

url - 与 Jekyll 类似 Stackoverflow 的永久链接

javascript - 包装一系列闭包

javascript - Emberjs动态数据切换效果

javascript - 是否可以跟踪用户访问远程站点的时间范围?

ios - 向后播放视频

javascript - 谁能帮我用这个 javascript 来验证 aspx 中的 url 吗?

javascript - 如何更改列表项的CSS内容属性

c# - 通过 IIS 而不是通过控制台应用程序调用时,未镜像的代码会泄漏内存

sharepoint - TWebBrowser和NTLM身份验证