这是我的功能:
function loadNext(choice) {
$("#thequestion").load("question.php", { ans: choice, id: "<?php echo $row['id']; ?>", nextId: "<?php echo $nextQuestionId; ?>" } );
$("#graph").load("graph.php", { id:"<?php echo $row['id']; ?>", nextId: "<?php echo $nextQuestionId; ?>" } );
}
我执行该功能,Firebug说数据正在发布,例如:
Parameters:
ans y
id 3
nextId 1
Source:
ans=y&id=3&nextId=1
但是,当我尝试在'question.php'或'graph.php'中检索它们时,如下所示:
$id=$_GET["id"];
$nextId=$_GET["nextId"];
他们回复为null。
有什么想法吗?
编辑:我刚刚注意到执行该功能时网站URL没有改变。不应将ans=y&id=3&nextId=1
附加到其上以便发送数据?或者这不是jQuery / ajax的情况吗?
/question.php?ans=y&id=3&nextId=1
手动,一切正常!所以现在我真的很困惑 - 这已经将问题缩小到函数loadNext(选择),不是吗?
编辑 - (不是操作)建议编辑以包含javascript和jquery标记。
答案 0 :(得分:3)
如果数据作为对象提供,则使用POST方法;否则,假设GET。
更改PHP脚本以查看$_POST
(或$_REQUEST
,如果您感到懒惰)或将JavaScript更改为
$.get("question.php", {
ans: choice,
id: "<?php echo $row['id'] ?>",
nextId: "<?php echo $nextQuestionId ?>"
}, function(data) {
$("#thequestion").html(data);
});
答案 1 :(得分:0)
试试这个,
function loadNext(choice) {
$("#thequestion").load("question.php?ans=choice&id=<?php echo $row['id']; ?>&nextId=<?php echo $nextQuestionId; ?>" } );
$("#graph").load("graph.php?id=<?php echo $row['id']; ?>&nextId=<?php echo $nextQuestionId; ?>" } );
}