Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/35: Рейтинг темы: голосов - 35, средняя оценка - 4.57
5 / 0 / 2
Регистрация: 16.11.2013
Сообщений: 96
1

Обращение к родительскому элементу для текущего дочернего элемента

14.01.2015, 21:49. Показов 7305. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Хотел спросить, есть код вида


HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<div class="item">
   <table>
       <tr>
           <td></td>
       </tr>
       <tr>
           <td></td>
       </tr>
       <tr>
           <td></td>
       </tr>
   </table>
</div>
 
<div class="item">
   <table>
       <tr>
           <td></td>
       </tr>
       <tr>
           <td></td>
       </tr>
       <tr>
           <td></td>
       </tr>
   </table>
</div>

Javascript
1
2
3
4
5
6
7
8
var $container = $('.item'),
     $row = $container.find('table').find('tr');
 
 
$row.click(function() {
 
/*  код, например, $(this).addClass('selected');  */
});
Вот мне надо, обратиться к родительскому контейнеру с классом class="item" при нажатии на текущую строку. Через this это можно сделать?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.01.2015, 21:49
Ответы с готовыми решениями:

Обращение к родительскому элементу при наличии элемента span
Здравствуйте, я новичок, пишу пользовательский скрипт на JS На странице есть несколько блоков со...

передать размер элемента родительскому элементу
Доброго времени суток! Только начинаю изучать js, помогите пожалуйста правильно сформулировать вот...

Универсальный способ передачи данных из дочернего окна, Родительскому
Есть такой сценарий : Передаётся информация из первого окна во второе, затем из второго в третье. ...

Получение доступа к родительскому элементу из вложенных друг в друга iframe
&lt;body&gt;&lt;iframe&gt; ... &lt;iframe&gt;&lt;/iframe&gt; ... &lt;/iframe&gt;&lt;/body&gt; Как из самого глубоко...

5
Superposition
950 / 615 / 256
Регистрация: 27.10.2013
Сообщений: 2,083
14.01.2015, 22:16 2
$(this).parent().addClass(...)
0
5 / 0 / 2
Регистрация: 16.11.2013
Сообщений: 96
14.01.2015, 22:28  [ТС] 3
не все так просто, я забыл написать, что в обработчике клика для $row я запускаю функцию, которая принимает параметр $container, а это как известно массив объестов jquery, так как там будут как известно 2 контейнера с классом item, а я хотел бы обратиться именно к тому контейнеру, который является родителем для текущей нажатой строки.

Добавлено через 2 минуты
Javascript
1
2
3
4
$row.click(function() {
 
 checkContainer($container);
});
типа того...
0
88 / 88 / 34
Регистрация: 22.05.2012
Сообщений: 404
15.01.2015, 03:06 4
или так
Javascript
1
2
3
4
5
$(document).ready(function(){
    $('tr').on('click' , function(){
        $(this).parents('.item').css({ 'border' : '1px solid' });
    })
});
Или так
Javascript
1
2
3
$(document).on('click' , 'tr' , function(){
        $(this).parents('.item').css({ 'border' : '1px solid' });
})
или так
Javascript
1
2
3
4
5
6
7
$(document).on('click' , 'tr' , function(){
        some( this );
})
 
function some( el ){
    $(el).parents('.item').css({ 'border' : '1px solid' });
}
1
5 / 0 / 2
Регистрация: 16.11.2013
Сообщений: 96
15.01.2015, 11:52  [ТС] 5
выкладываю весь код для более понятного описания сложившейся ситуации:
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
var $container = $('.category-section'),
        $row = $container.find('tbody').find('tr');
 
     
    $row.on('click', function() {
        $row.removeClass('m-selected');
    
        $(this).addClass('m-selected');
 
        var check = checkContainer($(this).parents('.category-section'));
 
        if(check) {
            $('#bank-info').modal();
 
            $('#bank-info').on('show.bs.modal', function(e) {
                /*Здесь я хочу вызвать модальное окно именно для текущей строки, на которую мы кликнули*/
            });
        }
 
        else {
            return;
        }
    });
 
    
 
 
    function checkContainer(container) {
        var str;
 
        str = container.find('header').find('h3').text();
 
        if(str == 'Список банков') {
            return true;
        }
 
        else {
            return false;
        }
    }

В условном операторе есть коммент. Но я опишу ситуацию еще раз: собираю все строки в одну выборку, вешаю на них событие клик, а затем запускаю функцию checkContainer и в зависимости, что она вернет делаю проверку, если true, то хочу запустить модальное окно. Но модальное окно должно относиться именно к той строке по которой мы кликнули
0
88 / 88 / 34
Регистрация: 22.05.2012
Сообщений: 404
15.01.2015, 12:10 6
Цитата Сообщение от den0820 Посмотреть сообщение
Но модальное окно должно относиться именно к той строке по которой мы кликнули

Пардонс а в чем связь строки с модальным окном ??
для текущаго ( по которому кликнули ) ка-то так
Javascript
1
2
3
4
5
$('#bank-info').on('show.bs.modal', function(e) {
                /*Здесь я хочу вызвать модальное окно именно для текущей строки, на которую мы кликнули*/
if(checkContainer( $(this) ) === true){
  // do some
}
});
0
15.01.2015, 12:10
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.01.2015, 12:10
Помогаю со студенческими работами здесь

Как передать значение переменной из дочернего окна родительскому
Открываю дочернее окно и нужно оттуда получить значение переменных и вывести в родительском как это...

Доступ к родительскому элементу и его методам из дочернего класса
У меня есть класс, описывающий мячик - берется картинка и помещается на родительском виджете Ping....

Применение стилей к родительскому элементу
Здравствуйте ! Как с помощью css добавить свойства в родительский элемент ? например: &lt;div&gt;...

Применить стиль к родительскому элементу
Применить стиль к родительскому элементу Всем привет, подскажите пожалуйста. Вот есть такой код...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru