Вопрос по jquery, javascript, css, html – Как выбрать определенный HTML-элемент в div

4

Я хочу выбрать определенные элементы HTML в DIV. Что-то вроде этого:

$("#foo table,tr,td,span,p" ).addClass( Myclass );

Но он добавляет класс и вне DIV "#foo". То есть только класс в div "#foo" - это класс "Myclass", который нужно добавить. Благодарю.

Поскольку ваши селекторы после запятой являются общими, вы должны указывать #foo перед каждым элементом tymeJV
$("#foo table, #foo tr, #foo td, #foo span, #foo p").addClass("Myclass"); entropic
Спасибо, теперь это работает. user3417601

Ваш Ответ

5   ответов
2

tr, td, spans и p в div с идентификатором foo? Этот селектор был бы больше похож

$("#foo table,#foo tr, #foo td, #foo span, #foo p")

Ваш текущий селектор говорит «все таблицы внутри div с идентификатором« foo », а затем также все tr, td, spans и p на весь документ

7

Проблема: запятая, отделяет автономные селекторы. Вы должны выбрать#foo сначала выберите ваши внутренние элементыtable, tr, td, span, p.

Ты можешь использоватьконтекст атрибут:

$("table, tr, td, span, p", "#foo").addClass("Myclass");

или вы можете связать свои селекторы:

$("#foo").find("table, tr, td, span, p").addClass("Myclass");
Спасибо очень мило! user3417601
@ user3417601 Я рад, что ваша проблема решена :) Пожалуйста, примите ответ, который помог вам больше всего. Kate Miháliková
3

каждый элемент должен иметь родительский идентификатор, т.е.#fooперед этим и вам нужно обернуть ваше имя класса, т.е.myClass, с"".

$("#foo table, #foo tr, #foo td, #foo span, #foo p").addClass("Myclass");
2

Когда вы добавляете запятую, вы разделяете селекторы. Пытаться

$("#foo table, #foo tr, #foo td, #foo span, #foo p" ).addClass( Myclass );
1

Способ 1:

$("#foo").find("table, tr, td, span, p").addClass("Myclass");

Способ 2:

$("#foo table , #foo tr, #foo td, #foo span, #foo p").addClass("Myclass");

Похожие вопросы