django-dynamic-formset で autocomplete-light を使用しています。動的に追加された行のオートコンプリートは機能しません。オートコンプリートでポップアップが表示されますが、最後に静的に作成された行に固定されます。リスト内のアイテムを選択すると、現在の行ではなく、最後に静的に作成された行に値が挿入されます。静的に作成されたフォームセットの場合、 autocomplete-light はうまく機能します。
それは私のフォームとフォームセットです:
class MassSvidForm(forms.Form):
num = CharField(label=u'Номер', required=True)
kod_num = CharField(
widget=autocomplete_light.TextWidget('KodZvtKod'))
zvt_type = CharField(ZVTType.objects.all(),
widget=autocomplete_light.TextWidget('ZVTTypeAutocomplete'))
zvt_name = CharField(ZVTName.objects.all(),
widget=autocomplete_light.TextWidget('ZVTNameAutocomplete'))
SvidFormset = formset_factory(
extra=0,
form=MassSvidForm,
can_delete=True,
)
svid_formset = SvidFormset(request.POST or None,
initial=[{
'template': tmpl.id,
'kod_num': tmpl.reservednumber.kod_zvt.kod,
},],
)
それは私のjsフォームセットの作成です:
<script type="text/javascript">
$(function() {
$('#massForm tbody tr').formset({
prefix: '{{ formset.prefix }}',
added: (function(row) {
$(row.find('.autocomplete-light-text-widget')).each(function() {
$(this).trigger('initialize');
})
})
});
})
</script>
Django 1.5、django-dynamic-formset 1.2、autocomplete-light 1.1.23 を使用しています