【发布时间】:2011-07-16 04:10:11
【问题描述】:
我正在尝试window.open 带有空格的网址:
var msg = 'Hello, world!';
var url = 'http://yoursite.com';
var link = 'http://www.twitter.com/share?text=' + msg + '&url=' + url;
window.open(link);
运行此代码将打开一个带有http://twitter.com/share?text=Hello,%2520world!&url=http://yoursite.com 的新窗口。
msg 中的空格被转换为 %20,然后 '%' 被转换为 %25。作为一种解决方法,我补充说:
msg = msg.replace(/\s/g, '+');
但是我需要注意其他字符还是有更好的解决方法?
【问题讨论】:
-
我忘了补充说我正在使用 Drupal 和 jQuery。此代码包含在 Drupal.behaviors 中……我认为这些不会影响任何事情。
标签: javascript escaping spaces window.open