jquery在父div中选择类

ada*_*dam 22 javascript jquery

我正在尝试更改图像的alt,我点击选择图像的类(add_answer)

注: 含有不同内多次显示出来.add_answerdiv

jQuery(function(){   // Add Answer

    jQuery(".add_answer").click(function(){
        var count = $(this).attr("alt");
        count++;
        $('.a_type_'+count+'').show();
        $(this).parents("div:first").$('.add_answer').attr("alt", count);
    }); 

});
Run Code Online (Sandbox Code Playgroud)

这行似乎不起作用,如何add_answer通过它的父类选择此类div

$(this).parents("div:first").$('.add_answer').attr("alt", count);
Run Code Online (Sandbox Code Playgroud)

其他人有想法吗?

单击时我正在尝试降低图像alt上的值.add_answer.destroy_answer

jQuery(function(){   // Hide Answer

    jQuery(".destroy_answer").click(function(){
        $(this).parents("div:first").hide();
        var count = $('.add_answer').attr("alt");
        count--;
        $('.add_answer',$(this).parent('div:first')).attr('alt',count);


    }); 

});
Run Code Online (Sandbox Code Playgroud)

问题线:

$('.add_answer',$(this).parent('div:first')).attr('alt',count);
Run Code Online (Sandbox Code Playgroud)

Era*_*rin 26

您可以使用父div作为范围:

 $('.add_answer',$(this).parent('div:first')).attr('alt',count);
Run Code Online (Sandbox Code Playgroud)


And*_*ech 13

这应该工作:

$(this).parent("div").find(".add_answer").attr("alt", count);
Run Code Online (Sandbox Code Playgroud)


Tob*_*nik 5

你的代码几乎是正确的。所需的更改是在 .parents 方法之后使用 .find 而不是 .$ 。应该避免使用 .parent 而不是 .parents ,这样你的代码会更不引人注目(准确地说 - 这样 img 可以是 div 的非直接子元素)。

$(this).parents('div:eq(0)').find('.add_answer')
Run Code Online (Sandbox Code Playgroud)

您可以操纵 :eq(0) 来选择例如使用 :eq(2) 的第三个父 div。