Найти вложенные элементы DOM, используя jQuery - PullRequest
2 голосов
/ 27 октября 2011

Мне нужно найти определенные элементы в моем DOM, используя JQuery.

Случай:

var dialog = $(DOM.loadHTML("amc-refine", "scripts/dialogs/amc-dialog.html"));
elmts = DOM.bind(dialog);

Итак, elmts - это переменная с элементами DOM ... у меня есть таблицачто я могу получить к нему доступ с помощью

$(elmts.dialogTable)

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

$('#example thead tr').each( function () {
        this.insertBefore( nCloneTh, this.childNodes[0] );
    } );

, но не могу получить доступмоя таблица с использованием # .. так что я могу сделать это:

$(elmts.dialogTable).find('thead').find('tr')

более того, что если я хочу достичь также

$('#example tbody td img')

, используя тот же $ (elmts.dialogTable)

С наилучшими пожеланиями

Ответы [ 2 ]

2 голосов
/ 27 октября 2011

Вы должны иметь возможность использовать find и передавать ему весь селектор:

var img = $(elmts.dialogTable).find('tbody td img');

Вам не нужно звонить find несколько раз, какВы сделали в своем примере.Ваш пример может быть переписан для использования find('thead tr').

В качестве альтернативы, вы можете использовать elmts.dialogTable в качестве контекста , чтобы выбрать:

var img = $("tbody td img", elmts.dialogTable);
1 голос
/ 27 октября 2011

Это должно быть возможно:

$('#example thead tr', elmts.dialogTable).each( function () {
        this.insertBefore( nCloneTh, this.childNodes[0] );
    } );

Второй параметр означает context.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...