Javascript Jquery Ajax POST未发送所有数据
我试图使用AJAX发布到页面并显示结果,但它并没有发送所有参数Javascript Jquery Ajax POST未发送所有数据,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我试图使用AJAX发布到页面并显示结果,但它并没有发送所有参数 function change_page(button){ var parent_div = $(button.parentNode); var param = parent_div.attr("id"); var page = this.value; var user = $("#user").val(); var ip = $("#ip").val(); $.ajax({
function change_page(button){
var parent_div = $(button.parentNode);
var param = parent_div.attr("id");
var page = this.value;
var user = $("#user").val();
var ip = $("#ip").val();
$.ajax({
url: "gui_info.php",
type: 'POST',
data: { param : page, "user" : user, "ip" : ip },
dataType: "html",
success: function(data){
parent_div.html(data);
alert(data);
}
});
}
在它发送到的php页面上,我使用
print\r($\u POST)
查看实际接收到的参数。只有user
和ip
成功发送,因为响应是Array([user]=>[ip]=>)
,而参数键/值不是。我已经检查了未发送的变量的值,它们都存在。我做错了什么?你所要做的就是:
data: {
page: param,
url: url,
ip: ip
}
$.ajax({
url: "gui_info.php",
type: 'POST',
data: {
param : page,
user : user,
ip : ip
},
dataType: "json", // pass json in there
success: function(data){
parent_div.html(data);
alert(data);
}
});
你所要做的就是:
$.ajax({
url: "gui_info.php",
type: 'POST',
data: {
param : page,
user : user,
ip : ip
},
dataType: "json", // pass json in there
success: function(data){
parent_div.html(data);
alert(data);
}
});
您在请求中看不到该变量,因为其值未定义。未定义的值不包括在jQuery POST中 例如,当发送这样的数据时
$.ajax({
type: 'POST',
data: {
a: 1,
b: undefined,
c: false,
d: null
}
});
…这些是在XHR请求中传递的参数:
a: 1
c: false
d:
您在请求中看不到该变量,因为其值未定义。未定义的值不包括在jQuery POST中 例如,当发送这样的数据时
$.ajax({
type: 'POST',
data: {
a: 1,
b: undefined,
c: false,
d: null
}
});
…这些是在XHR请求中传递的参数:
a: 1
c: false
d:
试试这个
page = $(button).val() //If "button" is an element
而不是
page = this.value
将“this”更改为获取值的元素
page = $(button).val() //If "button" is an element
而不是
page = this.value
将“this”更改为获取值的元素什么是“this”?它有“值”吗?试着在ajax之前处理那些“用户”和“ip”变量。可能是的empty@blurd是“这个”引起了这个问题…谢谢你发现了“这个”是什么?它有“值”吗?试着在ajax之前处理那些“用户”和“ip”变量。可能是的empty@blurd正是“这个”导致了这个问题……谢谢你发现了这一点