Как сделать без id чтобы один элемент принадлежал другому

Ответ

В HTML можно связать элементы без использования id через атрибут form для полей формы или list для <datalist>.

Пример с <datalist>:

<input list="browsers">
<datalist>
  <option value="Chrome">
  <option value="Firefox">
</datalist>

Пример с формой:

<form id="myForm">
  <input type="text" name="username">
</form>
<button form="myForm" type="submit">Отправить</button>

Также можно использовать JavaScript для динамической связи элементов через DOM-свойства, например parentNode, children или nextElementSibling.

Ответ 18+ 🔞

Смотри, вот тебе наглядная картина, как в HTML элементы могут друг за друга цепляться без этих ваших id. Прям как в жизни — иногда родню по паспорту не ищут, а так, по приколу, находят.

Ну, например, есть у тебя <datalist>. Это такая хитрая жопа, которая подсказки для <input> вываливает. Так вот, чтобы они друг друга нашли, им даже id не всегда нужен, если они рядом, в одном родителе. Но по канону, конечно, через list связывают. Смотри, как просто:

<input list="browsers">
<datalist id="browsers">
  <option value="Chrome">
  <option value="Firefox">
</datalist>

Видишь? input тычешь в list="browsers", а datalist скромно так отвечает: «Да, я, я browsers, чё надо?». И всё, они поженились. Красота.

А вот ещё фокус, который многих в ступор вгоняет. Кнопка отправки формы может быть где угодно на странице, хоть в другом конце вселенной! Главное, ей шепнуть, какую форму она должна обслуживать. Смотри:

<form id="myForm">
  <input type="text" name="username">
</form>

<!-- Кнопка где-то в подвале сайта, ей похуй -->
<button form="myForm" type="submit">Отправить</button>

Вот это да, а? Кнопка с атрибутом form="myForm" чётко знает, что её долг — отправить именно ту форму. Никакого id на саму кнопку не надо, она и так всё понимает. Удобно, блядь.

Ну и конечно, если совсем припёрло и стандартные средства — это для слабаков, всегда можно натравить JavaScript. Этот парень найдёт родственные связи через parentNode, children или nextElementSibling даже там, где ты и не надеялся. Но это уже, как говорится, другая история, с динамикой и прочей магией.