【发布时间】:2014-05-15 15:31:15
【问题描述】:
我正在尝试通过 URL 传递一个变量,它在 Chrome 和 Firefox 中做了一些非常奇怪的事情,似乎在操作系统中也是如此。
问题是我试图以这种方式在 URL 中发送一些变量:
document.location.href = 'http://www.ihaves.org/main.php?id='+facebookUser+'&first_name='+facebookName+'&last_name='+facebookName+'&locat='+locat_+'&locationlat='+facebookLat+'&locationlon='+facebookLon+'&mode=facebook';
奇怪的结果是这样的:
当预期的结果应该是这个:(取自 IE)
我检测到问题出在名为“locat”的变量上,如果我将其取出,那么一切似乎都很棒,所以我认为“Vejer de la Frontera, Spain”的逗号可能是问题所在,所以我用过:
var location_name = locationName.replace(/,/g, '');
但它一直在做和以前一样奇怪的事情。任何想法? chrome 是否接受 espace beetwen 单词?请记住,Firefox 的功能完全相同。顺便说一句,我在 PHP 中使用 GET_。
【问题讨论】:
-
这就是你想要发生的事情。您应该使用编码的键/值对。某些字符会导致 URL 无效。
标签: javascript php variables url