Javascript jqueryajax获取不传递值
这让我快发疯了Javascript jqueryajax获取不传递值,javascript,jquery,Javascript,Jquery,这让我快发疯了 $(document).on("click",".load",function(b){ b.preventDefault(); $.get("/url/get.php",{ id: 123 }, function(a){ $("#result").html(a); }) }); 这会按预期加载页面,但当我执行print\r($\u GET)时,它显示为空。。。 有什么想法吗 后端: if (isset($user) == false) {
$(document).on("click",".load",function(b){
b.preventDefault();
$.get("/url/get.php",{
id: 123
},
function(a){
$("#result").html(a);
})
});
这会按预期加载页面,但当我执行print\r($\u GET)
时,它显示为空。。。
有什么想法吗
后端:
if (isset($user) == false) {
session_start();
$path_to_root = "../";
require($path_to_root."require/loads.php");
$PDO = new PDO(DB_CONN, DB_USERNAME, DB_PASSWORD);
$user = new User($PDO);
}
$i = 0;
print_r($_GET);
请使用done()函数尝试以下方法:
$(document).on("click",".load",function(b){
b.preventDefault();
$.get("/url/get.php",{
id: 123
}).done(
function(a){
$("#result").html(a);
})
});
正如文中所说,这是使用GET发送有效负载数据的方法
无论如何,您也可以使用ajax:
$.ajax({
url: "/url/get.php",
type: "get", //send it through get method
data:{id:123},
success: function(response) {
$("#result").html(a);
},
error: function(xhr) {
$("#result").html("ERROR");
}
});
无论如何,如果您仍在查看这些错误,那么问题将出现在您的后端@AmmarCSE评论中
希望能有帮助
编辑一些关于jquery方法success()和done()之间差异的文本:
请试试这个
$(document).on("click",".load",function(b){
b.preventDefault();
$.ajax({
method:'get',
url : '/url/get.php',
data : '{id:123}',
dataType: 'json', //json,html any you will return from backend
success:function(a){
$("#result").html(a);
}
})
});
试用
$data=文件\u获取\u内容(“php://input");
$r=json_解码($data)
而不是$\u进入php文件,然后打印$r,它可能与后端设置有关。这个js看起来很好,可能是我发布的后端@ammarcseth的复制品,它对我没有帮助@AlejandroTeixeiraMuñozOk!!现在看到了后端。检查!!。完成()解决了问题。。。谢谢。这很奇怪,因为我以前使用过,但没有.done()没有问题。$get和$ajax是不同的。。。我也有过疯狂的日子…:)很高兴看到你解决了!!我认为这是由于ajax xhr错误造成的。与done()类似,有一个success方法,在请求正常时运行。完成将永远运行。添加编辑以澄清