У меня есть следующий HTML:
<div class = "control-group">
<label class = "control-label-sub">Description/Pack Size</label>
<div class = "controls">
<input type = "text" name = "packetSize" class = "wfinput required form_error" id = "packetSize" />
<label id = "packetSize-error" class = "form_error" for = "packetSize">
This field is required.
</label>
</div>
</div>
Есть ли способ выбрать элемент <label>, который является дочерним элементом .control-group (то есть элемент с текстом «Описание/размер упаковки»), из текстового поля <input /> в моем HTML?
Это .prev() не .parent()
Вы должны показать, что вы пробовали до сих пор, неясно, в чем ваша сложность. Кроме того, избегайте скриншотов, реальный код намного лучше.
Для справки см. Обход дерева и Перемещение и манипулирование.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Чтобы выбрать элемент <label>, который находится над элементом <input/>, вы можете:
.closest(), чтобы выбрать первый элемент .control-group над элементом <input/>, а затем.control-groupЭтого можно добиться с помощью следующего сценария jQuery:
const input = $('input[name = "packetSize"]');
const controlGroup = input.closest('.control-group');
const label = $('label', controlGroup);
Это можно сжать в одну строку, но я разбил ее на шаги для ясности. Надеюсь, это поможет.
Я хочу начать с inputFieldId (представьте себе так много полей ввода)
Я хочу выбрать элемент метки, используя inputElement
Дакр, ты должен научить ОП задавать вопросы, ты догадываешься, что они хотят сделать, но ОП не предоставил достаточно информации.
Если вы хотите получить всю метку, этот класс был назван «control-label-sub».
var element = $("label.control-label-sub")
И если вы хотите получить только этот ярлык, я предпочитаю следовать
var element = $("input#packetSize").parent().prev()
использовать:
.parent()