@Barrakuda74

Почему не работает такой селектор?

Ребят, я что-то упустил из документации jQuery о селекторах? (или документации html/css).
Почему x равен undefined?
<p class="setFloor">
	<div>
		<input type="radio" name="floor" value="Number" checked>
	</div>
</p>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
<script>
		x = $('.setFloor input:checked').val();
		alert(x); // undefined
</script>


Убираю .setFloor из селектора - всё норм. Меняю тег p на div - всё норм. В чём проблема? Чем не нравится тег p?
  • Вопрос задан
  • 180 просмотров
Решения вопроса 1
@Barrakuda74 Автор вопроса
www.w3.org/TR/html401/struct/text.html#h-9.3.1
The P element represents a paragraph. It cannot contain block-level elements (including P itself).

Ужас. Вот что значит век живи век учись))))

А ведь по рунету кругом ходят тексты:
Блочные элементы могут содержать строчные элементы и другие блочные элементы, для которых их родитель будет являться контейнером.
(itchief.ru)
Блочные элементы могут содержать внутри себя элементы любого типа. Нельзя размещать блочные элементы внутри строчных, за исключением элемента img.
(html5book.ru)

HTML с CSS изучал на русском, JS и PHP - на английском. Видимо, придётся html с css переучивать :D
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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