我已经使用PHP和Smarty在我的网站上投了一个投票功能。 这是它的HTML部分:jQuery,PHP和Smarty的投票系统
<p>{$vote} <a href="vote.php?q_vote=vote_up&question_id={$qid}"><i class="icon-thumbs-up"></i></a> <a href="vote.php?q_vote=vote_down&question_id={$qid}"><i class="icon-thumbs-down"></i></a></p>
代码的PHP部分取票,并刷新了同一页面。
我想用jQuery做同样的事情,以便它不需要刷新页面。以下是我在HTML中写道:
$("#q_upvote").click(function()
{
var vote = "vote_up";
var votedata = "";
votedata = "vote= " + vote;
$.ajax({
type: 'POST',
url: 'vote.php',
data: votedata,
success: function(vote_msg){
if(msg == 'ok')
{
//show the new vote
}
else
//show notification
}
}
)
</script>
我想不出如何显示新的投票那里。你能帮助我吗?另外,我很感激,如果我被告知,如果我走的是正确的道路。
什么是Ajax响应新的计票或什么? – 2013-05-10 12:20:22
您需要将php响应更改为不提供完整页面,而只是提供您正在寻找的单个信息。 (或者几条信息的json字符串)。 – 2013-05-10 12:23:09
你在函数vote_msg参数但你检查味精参数改变它。此外,这行数据:votedata,可以更改为数据:“vote = voteup”这将简化您的脚本,并且不需要太多变量。当你提供投票参数vote.php PHP文件返回什么? – Robert 2013-05-10 12:23:26