所以,我已经在php / mysql中生成了一个带有'while'循环的表,我希望用户能够点击带有AJAX / JQuery的向上箭头按钮并让它在一个整数中添加+1数据库 AND 在页面上显示该新值。我已经解决了这个问题,但是通过在我的脚本中的其他地方进行更改它已经停止工作了。让我告诉你我有什么。
这是php脚本,回显表。我创建一个向上箭头,然后显示点(我后来想要添加+1)。
<div id="new_UpArrow">
<a href="javascript:void(0)" class = "new_upArrow"
rowid="' . $row['item'] . '"><img src="../Img/new_upArrow.gif"/>
</a> </div>';}
///////////POINTS/////////////
echo ' <div class = "points" id="' . $row['item'] . '">'. $row['points'] . '</div>
这是JQuery。我首先发送一个GET语句向数据库添加+1,然后我需要它在页面上为用户显示新的+1值。
//upArrow
$('.new_upArrow').click(function(){
var row = $(this).attr('rowid');
$.ajax({
type: "GET",
url: "upVote.php?id="+row,
cache: false,
async: false,
context: $('#'+row),
success: function(result) {
$(this).html(parseInt($(this).html()) + 1);
},
error: function(result){
alert('Voting error, please try again.');
}
});
});
同样,这一天工作得很好,现在我再也无法工作了。发生了什么事?
谢谢你们!
编辑: 经过一些进一步的调试,我就在这里:
jQuery正在从我的php中拉出rowid,因为我能够回显该变量。但是,即使我手动将该ID输入“上下文”部分,脚本也会失败。 我无法将jQuery集中在我的'积分'上。
答案 0 :(得分:0)
(编辑:好的,我的第一个建议非常愚蠢,我没有正确地阅读这个问题,对不起)
您是否尝试过使用成功功能中的选择器而不是$(this)
? row
变量位于闭包中,因此您可以重复使用...