我使用自动完成灯和django-dynamic-formset。对于动态添加的行,自动完成功能不起作用 - 它会显示具有自动完成功能的弹出窗口,但会将其粘贴到上次静态创建的行。如果我在列表中选择项目 - 它会将值插入到上一个静态创建的行中,而不是当前行。对于静态创建的formset 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 formset创建:
<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
答案 0 :(得分:1)
由于你的帮助,这已在1.1.26中修复。