Пользовательский интерфейс jQuery: автозаполнение для нескольких полей, использование разных источников

У меня есть страница с несколькими формами, которые загружаются через 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, я заранее не знаю, какими будут их индивидуальные идентификаторы, только класс. Их может быть много или мало, все зависит от того, что делает пользователь.

Как бы вы решили эту проблему?

5
задан Andrew Whitaker 7 March 2012 в 17:24
поделиться