我正在通过ajax
发出jQuery
个请求,例如,我的网址为http://test.com/query.php?hello=foo bar
但是,请求只需http://test.com/query.php?hello=foo
。我怎么做它所以它需要空间?以及&
,-
,!
等特殊字符实体
由于
答案 0 :(得分:2)
如何制作它以使其占用空间?
通过适当的url encoding空格:
http://test.com/query.php?hello=foo+bar
或:
http://test.com/query.php?hello=foo%20bar
和&, - ,!等特殊字符实体
它是一样的。确保你正确编码它们:
&
=> %26
-
=> -
(不需要编码)!
=> !
(不需要编码)为了在javascript中正确执行此操作,您可以使用encodeURIComponent
函数。
或者如果您使用jQuery,您还可以查看$.param()
方法。
最后,如果您使用jQuery发送AJAX请求,您可以这样做:
$.ajax({
url: 'query.php',
type: 'GET',
data: { hello: 'foo bar' },
success: function(result) {
...
}
});
并且jQuery将正确处理在data
哈希中传递的查询字符串参数的url编码。
答案 1 :(得分:0)
你可以做encodeURI(URI)
访问此链接以获取更多信息
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/encodeURI