我是一个完整而彻底的AJAX菜鸟,并且在过去的5个小时内遇到了同样的问题。
我的脚本代码
<script language='javascript'>
function upvote(id ,username)
{
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
{
}
};
xmlhttp.open("GET", "vote.php?id=" +id+"&username=" +username, true);
xmlhttp.send();
}
</script>
&#13;
我的onclick链接,
<a href='javascript:void(0)' onclick='upvote($id,$username)'></a>
&#13;
$_GET
用于检索通过页面URL发送的参数。例如
../vote.php?id=3&username=anor
当我尝试使用时,我的php文件非常完美。
我认为PHP无论如何都没有错。但是由于某种原因,xmlhttp.send(params)仍然没有将所需的变量发送到vote.php文件。我尝试发布AJAX请求,但它也没有工作。
答案 0 :(得分:0)
编辑它们 如果是php文件
$id = '1';
$username = 'suman';
echo '<a href="javascript:void(0)" onclick="upvote(\''$id'\',\''$username'\')"></a>';
?>
答案 1 :(得分:0)
如果这是PHP代码的一部分
onclick='upvote($id, $username)'
它不起作用。它应该是
onclick='upvote($id, "$username")'
代替。让我们看看您发布的示例:$ id = 3和$ username = anor。这将导致
onclick='upvote(3, anor)'
只要没有名称为anor
的Javascript变量,这就相当于
onclick='upvote(3, undefined)'
你知道吗?
PS:upvote函数本身似乎很好