在ajax调用之后使用var in next函数

时间:2012-10-14 18:40:19

标签: jquery

  

可能重复:
  jQuery: select an element’s class and id at the same time?

当我对函数进行此ajax调用时,我需要使用类和某个id更新div:

        $(function() {
        $(".click-follow").click(function() {

            var user_id = "<?=$id?>";
            var id = $(this).attr('title');
            var dataString = 'user_id=' + user_id + '&id=' + id;

            $.ajax({
                type: "POST",
                url: "/ajax/follow.php",
                data: dataString,
                }).done(function( result ) {
                    myresult(result);
            });

            return false; 
        });
    });


function myresult(result) {
var result_lines = result.split("<splitter>");    
if (result_lines[0] == '1') {
    $('.click-follow').html(result_lines[1]).fadeIn(500);
    $('.follow').html(result_lines[2]).fadeIn(500); 
} else if (result_lines[0] == '2') { 
    $('.click-follow').html(result_lines[1]).fadeIn(500); 
    $('.follow').html(result_lines[2]).fadeIn(500); 

}
return true;   

}

所以我想在函数myresult中使用var id,例如:

    $('.click-follow#' + id).html(result_lines[1]).fadeIn(500);

例如:我有3个div:

 <div class="click_follow" id="1"></div>
 <div class="click_follow" id="2"></div>
 <div class="click_follow" id="3"></div>

当我单击div 1时,我也想更新div 1.但我不知道如何在ajax调用后调用的函数中使用var id。问题是div的数量不知道...所以它可以是20 div或2 ...

2 个答案:

答案 0 :(得分:0)

$(".click-follow").click(function() {
  $("#fade").fadeIn()
});

Demo

答案 1 :(得分:0)

我认为你真正想要的是对被点击的元素的引用,这非常简单:

$(".click-follow").click(function() {
    var element = this;
     //...

     $.ajax({
         type: "POST",
         url: "/ajax/follow.php",
         data: dataString,
     }).done(function( result ) {
         myresult(element, result);
     });
});

function myresult(element, result) {
    // ...
    $(element).html(result_lines[1]).fadeIn(500);
}