Как я могу выбрать элемент родного брата, используя jQuery? - PullRequest
51 голосов
/ 18 сентября 2011

Можете ли вы помочь мне с этим селектором jQuery?

$(".auctiondiv .auctiondivleftcontainer .countdown").each(function () {
    var newValue = parseInt($(this).text(), 10) - 1;
    $(this).text(newValue);

    if (newValue == 0) {
        $(this).parent().fadeOut();
        chat.verify($(this).parent().parent().attr('id'));
    }
});

По сути, я хочу выбрать элемент с классом .bidbutton, принадлежащий тому же родительскому элементу, что и .countdown в каждом цикле:

<div class="auctiondivleftcontainer">
    <p class="countdown">0</p>
    <button class="btn primary bidbutton">Lance</button>                            
</div>  

А затем примените это к этой кнопке:

$(button here).addClass("disabled");
$(button here).attr("disabled", "");

Ответы [ 10 ]

101 голосов
/ 18 сентября 2011

Используйте jQuery .siblings(), чтобы выбрать подходящего брата.

$(this).siblings('.bidbutton');
4 голосов
/ 18 сентября 2011
$(this).siblings(".bidbutton")
2 голосов
/ 15 сентября 2015
$("h2").siblings().css({"color": "blue"});

Подробности описаны в источнике ниже:

http://www.namasteui.com/traversing-siblings/

2 голосов
/ 04 мая 2015

Вот ссылка, которая полезна для изучения выбора элемента одного уровня в Jquery.

Как выбрать элемент одного уровня с помощью jQuery

$("selector").nextAll(); 
$("selector").prev(); 

Вы также можете найти элемент, используя селектор Jquery

$("h2").siblings('table').find('tr'); 

Для получения дополнительной информации, обратитесь к этой ссылке next (), nextAll (), prev (), prevAll (), find () и родные братья вJQuery

1 голос
/ 09 августа 2016

jQuery предоставляет метод с именем "siblings ()" , который помогает нам возвращать все элементы одного и того же элемента выбранного элемента.Например, если вы хотите применить CSS к родственным селекторам, вы можете использовать этот метод.Ниже приведен пример, который иллюстрирует это.Вы можете попробовать этот пример и поиграть с ним, чтобы узнать, как он работает.

$("p").siblings("h4").css({"color": "red", "border": "2px solid red"});

0 голосов
/ 22 апреля 2019

Вы можете выбрать элемент брата, используя jQuery

 <script type="text/javascript">
    $(document).ready(function(){
        $("selector").siblings().addClass("classname");
    });
 </script>

Демо здесь

0 голосов
/ 12 апреля 2019

также, если вам нужно выбрать брата с именем, а не с классом, вы можете использовать следующее

var $sibling = $(this).siblings('input[name=bidbutton]');
0 голосов
/ 05 декабря 2016

Если вы хотите выбрать определенного родного брата:

var $sibling = $(this).siblings('.bidbutton')[index];

, где 'index' - индекс конкретного родственного брата в родительском контейнере.

0 голосов
/ 18 сентября 2011

Попробуйте -

   $(this).siblings(".bidbutton").addClass("disabled").attr("disabled", "");
0 голосов
/ 18 сентября 2011

Поскольку $(this) относится к .countdown, вы можете использовать $(this).next() или $(this).next('button') более конкретно.

...