Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   jstree и href (https://javascript.ru/forum/jquery/36112-jstree-i-href.html)

yiooxir 04.03.2013 15:45

jstree и href
 
Вопрос ламерский наверно:
Подключил к проекту jstree. Надо чтобы по клику на элементе дерева был переход по ссылке, а она переходы блокирует.
Подошел с другого бока, решил в скрипте прям узнать href ссылки и сделать редирект прям из скрипта.

В общем конструкция там такая:
<ul><li><a href="slug"></a></li></ul>


в скрипте клик определяется функцией:
.bind("select_node.jstree", function (event, data) {
                	            // `data.rslt.obj` is the jquery extended node that was clicked
                	        });

Вопрос:
Как мне узнать href ссылки <a>, если она является дочерним элементом для тега <li>, который доступен через переменную data.rslt.obj ?

yiooxir 04.03.2013 15:57

Сделал так:
(data.rslt.obj).children('a').attr('href')


общая конструкция:
.bind("select_node.jstree", function (event, data) {
                	            // `data.rslt.obj` is the jquery extended node that was clicked

                	          location = (data.rslt.obj).children('a').attr('href');

                	        });

Наверное это хак, так как там скорее всего есть более цивилизованный способ, но тем не менее для временного решения пойдет.

глупо не знать таких вещей, да ))

danik.js 05.03.2013 11:35

Да нет, нормальное решение.
Цитата:

Сообщение от yiooxir
location = (data.rslt.obj).children('a').attr('href');

Лучше так:
(location = ((((((data).rslt).obj).children('a')).attr('href') )));

yiooxir 05.03.2013 12:28

Цитата:

Сообщение от danik.js (Сообщение 238853)
Да нет, нормальное решение.

Лучше так:
(location = ((((((data).rslt).obj).children('a')).attr('href') )));

А нафиг все скобками перекрывать ?

danik.js 05.03.2013 12:31

Цитата:

Сообщение от yiooxir
А нафиг все скобками перекрывать ?

Вот и я о том же)


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