Как использовать select parent> child с функцией jquery parent () - PullRequest
2 голосов
/ 23 апреля 2011

Мне нужно выбрать родительский div и потомок этого класса с определенным классом для добавления данных, когда я нажимаю на ссылку. Пожалуйста, дайте мне знать, если это имеет смысл. Это делает вызов ajax и возвращает данные, и ему нужно добавить число в div с именем 'num', но я не могу выбрать его правильно

$('.add_fav').live('click', function(){
        var link = $(this);
        var div = $(this).parent().parent();

        // this is where the problem is
        var num = $(this).parent().$('.favnumholder');

        $.get($(this).attr('href'),{}, function(data){
        var data = data.split(':');
            if(data[0] == 'added'){
                div.addClass("hasclass");
                link.addClass('favorited');
                link.attr('href', 'ajax/add-fav.php?action=rm&fav_type='+data[2]+'&fav_id='+data[1]);
                link.text('Un-fav');
                num.html(data[3]);
            } else if(data[0] == 'removed') {
                div.removeClass("hasclass");
                link.removeClass('favorited');
                link.attr('href', 'ajax/add-fav.php?action=add&fav_type='+data[2]+'&fav_id='+data[1]);
                link.text('Fav');
            }
        });
        return false;
    }); 

Ответы [ 2 ]

3 голосов
/ 23 апреля 2011
var num = $(this).parent().find('.favnumholder');

или

var num = $('.favnumholder', $(this).parent());
2 голосов
/ 23 апреля 2011

Вы имеете в виду:

var num = $('.favnumholder', $(this).parent());

Это выбирает favnumholder в родительском элементе

...