在ajax成功时,更改另一个链接值

时间:2014-09-23 23:45:06

标签: javascript jquery ajax

我有一个简单的jquery投票系统,用户点击一个心形图标,一个值会根据当前帖子的数量更新。这工作正常,但我想在另一个链接中显示更新的值。例如:

enter image description here

功能:

$(function() {
    $(".fav").click(function() {
        var id = $(this).attr("id");
        var dataString = 'id='+ id ;
        var parent = $(this);

        $(this).fadeOut(300);
        $.ajax({
            type: "POST",
            url: "/ajax/post_like.php",
            data: dataString,
            cache: false,
            success: function(html) {
                parent.html(html);
                parent.fadeIn(300);
            } 
        });
        return false;
    });
});

HTML的外观如下:

<a href="#" class="post-reaction pull-right fav" id="{$p->pid}"><i class="fa fa-heart"></i></a>
<a href="#" class="post-reaction pull-right"><i class="fa fa-retweet"></i></a>
<a href="#" class="post-reaction notes pull-right">{$p->notes}</a>

我怎样才能做到这一点?我还在学习javascript。任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:0)

如果您要做的只是将其增加1,您可以将其添加到您的成功中:

var val = parseInt($(".notes").text());
$(".notes").text(val+1);

否则,如果从您的AJAX返回,&#34; html&#34;,是您要使用的号码,只需替换

parent.html(html);

$(".notes").text(html);

<强>更新

根据您的评论,试试这个:

parent.parent().find(".notes").text(html);

这将获得最接近的notes(可能是您想要更新的那个)并更改它的文字。