Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Родитель элимента (https://javascript.ru/forum/jquery/40750-roditel-ehlimenta.html)

kotkew 18.08.2013 18:41

Родитель элимента
 
Здравствуйте, уважаемые. Помогите разобраться. Необходимо при нажатии на один из нескольких одинаковых элементов скрыть родителя, а так же выяснить родителя у родителя и совершить некие действия с дочерними элементами.
$(this).parent().hide()

Не работает. (Почему?)

Заранее благодарен.

danik.js 18.08.2013 18:57

Цитата:

Сообщение от kotkew
Не работает. (Почему?)

Обычная причина - криворукость.


<script src="http://code.jquery.com/jquery-latest.min.js"></script>
<fieldset>
    <legend>Родитель</legend>
    <button onclick="$(this).parent().hide()">Скрыть родителя</button>
</fieldset>

kotkew 18.08.2013 19:08

А что в этом коде не так?
$(function(){
            $(".option").click(function(){
                $(this).parent().hide();
            });
        });

danik.js 18.08.2013 20:19

Цитата:

Сообщение от kotkew
А что в этом коде не так?

Все так.


<script src="http://code.jquery.com/jquery-latest.min.js"></script>
<script>
$(function(){
            $(".option").click(function(){
                $(this).parent().hide();
            });
});
</script>
<fieldset>
    <legend>Родитель</legend>
    <button class="option">Скрыть родителя</button>
</fieldset>

Deff 18.08.2013 20:24

:( Родитель и алименты

kotkew 18.08.2013 20:34

Цитата:

Сообщение от danik.js (Сообщение 268059)
Все так.


<script src="http://code.jquery.com/jquery-latest.min.js"></script>
<script>
$(function(){
            $(".option").click(function(){
                $(this).parent().hide();
            });
});
</script>
<fieldset>
    <legend>Родитель</legend>
    <button class="option">Скрыть родителя</button>
</fieldset>

Но это как раз и не работает почему-то

kotkew 18.08.2013 20:38

Вот функция, которая открывает родительский элемент. Возможно какой-то конфликт?
$(".select").click(function(){
                    $('.selectList', this).show();
                }
            });


'.selectList' как раз тот родитель, который необходимо скрыть

danik.js 18.08.2013 20:48

Цитата:

Сообщение от kotkew
Но это как раз и не работает почему-то

То есть, пример, который я запостил у тебя не работает? Какой браузер?
Может у тебя доступ заблокирован к http://code.jquery.com/ ?

kotkew 18.08.2013 21:17

Цитата:

Сообщение от danik.js (Сообщение 268071)
То есть, пример, который я запостил у тебя не работает? Какой браузер?
Может у тебя доступ заблокирован к http://code.jquery.com/ ?

Ваш пример у меня работает, но с функцией, которую я указал выше, работать не хочет

danik.js 18.08.2013 21:38

Цитата:

Сообщение от kotkew
'.selectList' как раз тот родитель, который необходимо скрыть

В твоем коде .selectList не может быть родителем, так как ты ограничиваешь контекст поиска элементом this. Скорее всего тебе нужно
$(this).closest('.selectList') (или $(this).parents('.selectList'), но первое предпочтительней ).


Часовой пояс GMT +3, время: 09:53.