Правильный селектор для добавления

#javascript #jquery

#javascript #jquery

Вопрос:

Какой селектор я должен использовать, чтобы добавить значение для div, в котором находится форма ввода, а не все divs? Divs много, и они одинаковы, поэтому я не могу просто использовать class или id.

 $("input").focusout(function(event){
             $("div").append($(this).val());
};
 

Комментарии:

1. Ээх что? Я этого не понимаю.

2. вам необходимо предоставить больше информации. по крайней мере, дайте представление о структуре html

Ответ №1:

 $("input").on('change', function(){
    var $this = $(this);
    $this.closest('div').append($this.val());
})
 

Отредактируйте, чтобы уточнить код:

Поскольку я думаю, что OP просто хочет показывать значения в div при изменении info, лучшее событие change завершено focusout .

var $this = $(this); используется, потому что иногда селекторы могут быть дорогими, тогда я «кэширую» объект, который можно использовать раньше. $this это просто имя переменной.

Комментарии:

1. Спасибо, это сработало! Не могли бы вы вкратце объяснить мне, для чего это var $this = $(this); нужно?

2. Я добавил объяснение в ответ

Ответ №2:

Найдите ближайший элемент формы, затем выполните поиск div в этой форме.

 $(this).closest('form').find('div').append($(this).val());