Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/419.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将多个变量传递到PHP页面_Javascript_Php_Jquery - Fatal编程技术网

Javascript 将多个变量传递到PHP页面

Javascript 将多个变量传递到PHP页面,javascript,php,jquery,Javascript,Php,Jquery,我想将URL中的多个变量city1和area1(JavaScript变量)传递到PHP页面,但我被下面显示的部分卡住了。我做错了什么 $("#list").load("selectcity.php?city1="+city1&"area1="+area1); $.ajaxSetup({ cache: false }); &字符应该在引号内,而不是引号外。这是正确的代码: $("#list").load("selectcity.php?city1="+city1+"&area1=

我想将URL中的多个变量
city1
area1
(JavaScript变量)传递到PHP页面,但我被下面显示的部分卡住了。我做错了什么

$("#list").load("selectcity.php?city1="+city1&"area1="+area1);
$.ajaxSetup({ cache: false });

&
字符应该在引号内,而不是引号外。这是正确的代码:

$("#list").load("selectcity.php?city1="+city1+"&area1="+area1);
$.ajaxSetup({ cache: false });
GET参数由字符
分隔。您正在向文件传递两个参数,以
分隔。URL中的
符号表示其后面的下一个字符是
GET
参数

或者您可以使用
$.get
,它非常容易设置,并且可以像
$一样正常工作。load

$.get("selectcity.php", {"city1": city1, "area1": area1}, function(response){
 $("#list").html(response);
});

&
字符应该在引号内,而不是引号外。这是正确的代码:

$("#list").load("selectcity.php?city1="+city1+"&area1="+area1);
$.ajaxSetup({ cache: false });
GET参数由字符
分隔。您正在向文件传递两个参数,以
分隔。URL中的
符号表示其后面的下一个字符是
GET
参数

或者您可以使用
$.get
,它非常容易设置,并且可以像
$一样正常工作。load

$.get("selectcity.php", {"city1": city1, "area1": area1}, function(response){
 $("#list").html(response);
});

最好不要手动形成查询字符串,因为您将经常遇到不太明显的错误。jQuery提供了一种从对象自动构造查询字符串的方法:

var ajaxData = {
    city1: city1,
    area1: area1
};
$.get('selectcity.php', ajaxData, function(data) {
    $('#list').html(data);
});
()

它需要稍多的代码,但保证安全。还有一个
.load(url,data)
快捷方式,但是它会发送一个POST请求而不是GET请求,这可能不是您想要的


另外,我不确定jQuery是否会自动对手动生成的查询字符串进行URL编码,因此字符串连接方法可能会引入更多的错误。

最好不要手动生成查询字符串,因为您会经常遇到不太明显的错误。jQuery提供了一种从对象自动构造查询字符串的方法:

var ajaxData = {
    city1: city1,
    area1: area1
};
$.get('selectcity.php', ajaxData, function(data) {
    $('#list').html(data);
});
()

它需要稍多的代码,但保证安全。还有一个
.load(url,data)
快捷方式,但是它会发送一个POST请求而不是GET请求,这可能不是您想要的


另外,我不确定jQuery是否会自动对手动生成的查询字符串进行URL编码,因此字符串连接方法可能会引入更多的错误。

您的
&
需要进入引号内:
selectcity.php?city1=“+city1”&area1=“+area1
@AndyJones:代码的问题是
&
之外!谢谢大家。现在它可以工作了。您的
&
需要在引号内:
选择City.php?city1=“+city1”&area1=“+area1
@AndyJones:代码的问题是
&
之外。”“
s!谢谢大家,现在可以用了