JQuery найти () напротив - PullRequest
       17

JQuery найти () напротив

10 голосов
/ 22 января 2012

Я хочу найти следующее в списке многих контейнеров div. Find () - отличная функция для поиска дочерних объектов. Но как насчет противоположного способа найти в родительском?

<form id="grabbMe">
    <div>
        <div>
            <div>
            <div><input type="text" value="test"></div>
            </div>
        </div>
    </div>
</form>

<script>
    $('input').findUp('form').attr('id')
</script>

Ответы [ 2 ]

17 голосов
/ 22 января 2012

Вы можете использовать функцию closeQ () jQuery для этого.

$('input').closest('form').attr('id');
2 голосов
/ 05 декабря 2018

Противоположность find() равна parents().

closest() не совсем противоположна find(), хотя в зависимости от того, что вы пытаетесь сделать, она может работать для вас.

функция find() находит все вхождения селектора внутри потомков указанного вами элемента.

closest() находит только первое вхождение селектора, проходя вверх через предков указанного элемента.

Таким образом, правильная противоположность find() будет parents(), которая найдет всех предков вашего элемента, которые соответствуют указанному селектору.

...