Селектор jquery
Как я могу захватить вложенный элемент "4"?
Я пробовал:
var nights = $("div.nights h5 div.num").val();
и
var nights = $("div.nights > h5 > div.num").val();
Пример:
<div class="nights">
<h5 class="biguns">
<div class="num">4</div>
Nights
</h5>
</div>
Ответы
Ответ 1
Используйте .text()
здесь, например:
$("div.nights h5 div.num").text()
//or this works too:
$("div.nights > h5 > div.num").text()
//or just
$("div.num").text();
Вы можете протестировать его здесь, как вы можете видеть выше, ваш селектор является гибким, используйте то, что работает с вашей общей разметкой. .val()
для элементов типа ввода, например. <input>
, <select>
, <textarea>
, <button>
... чтобы получить текст внутри любого другого элемента, используйте .text()
вместо этого.
Ответ 2
$("div.nights div").text()
но не
$("div.nights > div").text()
потому что
селектор потомков:
Потомком элемента может быть ребенок, внук, правнук и т.д. Этого элемента.
детский селектор:
Выбирает все прямые дочерние элементы, указанные "дочерним" элементом, указанным "parent".
ссылка дочерний селектор
селектор потомков