url中的空格在js和浏览器之间是未转义的

时间:2014-07-16 17:23:42

标签: javascript

我有一个参数,我试图在新页面的url中传递给PHP。在将其添加到url之前,我使用encodeURIComponent来解决它,如下所示:

urlstr = "mypage.php";  
param = "a string with spaces";  
param = encodeURIComponent(param);  
urlstr += "?param=" + param;  
console.log(urlstr);  //"mypage.php?param=a%20string%20with%20spaces", i.e. what I would expect
window.location.href = urlstr;  

但是,浏览器地址栏中显示的url是“mypath / mypage.php?param =带空格的字符串”,并且PHP似乎收到了param的错误值。

编辑:对不起,但是如果我展示了PHP文件,我的雇主会不会很高兴,足以说param是从$ _GET中获取并直接使用而没有任何更多处理并且将其交换为硬编码“期望值”使PHP的行为再次符合预期。

0 个答案:

没有答案