我无法解决简单的ajax函数
如果用户点击链接
,我想将带有ajax的php变量发送到另一个页面的Javascript
function sendData(a, b, c, d)
{
$.ajax({
url: "page.php",
type: "POST",
data: {"a": a, "b": b, "c": c, "d": d},
success:function(data) {
console.log(data);
document.location.href="page.php";
},
error:function(jqXHR,error_string,error){
console.log(error);
}
});
}
<button onClick="sendData(<?php echo $a ?>, <?php echo $b ?>, <?php echo $c ?>, <?php echo $d ?>)"> click </button>
答案 0 :(得分:0)
<button onClick="sendData('<?php echo $a ?>', '<?php echo $b ?>', '<?php echo $c ?>', '<?php echo $d ?>')"> click </button>
你忘了单引号
答案 1 :(得分:0)
document.location.href="page.php";
上述代码在获得成功ajax响应后将重定向到page.php
,您将无法从新页面中获取先前ajax请求中的任何数据(新GET请求)。
ajax请求已经完成并打印出对控制台的响应,新请求是没有数据的GET请求,因此你将在page.php
中得到一个空数组(print_r($ _ POST))。
查看您的响应的简单方法,只需注释或删除上面的代码,然后在控制台中检查ajax响应。
如果要将数据传递到其他页面,可以将数据存储到session
,然后从其他页面的会话中检索。
PS:打开浏览器开发工具(例如Google Chrome Network
)非常有用。