我有一个问题,因为我试图编写一个加载方法并传递它的参数。我必须填写一个选择:
GROUP BY
一切看起来都不错,但是当我在我的选择中选择一些选项时,Firebug会给我一个错误,因为我发送的参数有这样的空格:例如,如果我想发送"纽约" ,Firebug给出了一个错误,由于New和York之间存在分离,因此无法识别此参数。
有人能帮助我吗?
感谢。
答案 0 :(得分:2)
如果查询参数包含某些字符(如空格
),则必须对用于查询参数的字符串进行URL编码var query = encodeURIComponent( $("#parameter").val() );
$("#select").load("page.php?parameter1=" + query);
作为旁注,jQuery也为此内置了一些东西,这使得构建查询字符串变得更容易
var query = $.param({
parameter1: $("#parameter").val()
});
$("#select").load("page.php?" + query);
可以在$.param
中使用任意数量的键/值对并获得有效的查询字符串。
或者,可以将数据直接传递给load()
,后者又在内部调用$.param
,这可能是处理此类事情的最佳和最简单的方法
$("#select").load("page.php", {parameter1 : $("#parameter").val()});