У меня есть страница с несколькими формами, которые загружаются через ajax. Каждая форма включает одно текстовое поле, которое необходимо автозаполнять. Каждый текст имеет атрибут данных для источника автозаполнения. Например:
<input type="text" class="district_name" data-autocomplete-source="['foo','bar','baz']" ... />
Их может быть много, они будут относиться к разным формам и модифицировать разные записи, но поле автозаполнения будет иметь один и тот же класс.
Если я вызову автозаполнение для них вот так...
$('input.district_name').autocomplete({
source: $('input.district_name').data('autocomplete-source')
});
... тогда пользовательский интерфейс jQuery объединит источники из каждого поля в один основной список. Вместо этого я попытался вызвать...
$('input.district_name').autocomplete({
source: $( this ).data('autocomplete-source')
});
... который, как я надеялся, получит исходный код от своего родителя, но это совсем не сработало. Поскольку эти поля добавляются на страницу через ajax, я заранее не знаю, какими будут их индивидуальные идентификаторы, только класс. Их может быть много или мало, все зависит от того, что делает пользователь.
Как бы вы решили эту проблему?