Django-dynamic-formset - 只有一个 select 框有效

Django-dynamic-formset - only one select box works

我正在使用 Django-dynamic-formset 创建模板,当我单击添加按钮时会添加 formset

在我的表单集中有两个字段,一个是带有 choice_option 的 CharField,另一个是 CharField

当我点击添加按钮时,它正确地添加了表单集并且我所有的第二个字段(没有 choice_option 的 CharField)工作正常

但是在我的第一个字段(带有 choice_option 的 CharField)上,只有第一个 select 框有效,当我单击下面的另一个 select 框时,第一个 select 框已 selected This is what happens when I click 2nd or below select box 如何让每个 select 盒子正常工作?

我的代码是这样的,我遵循了 https://github.com/elo80ka/django-dynamic-formset/blob/master/docs/usage.rst

提前致谢

<form>
    <table id="id_orders_table" border="0" cellpadding="0" cellspacing="0">
        <tbody>
            {% for inventory_form in inventory_formset %}
            <tr>
                <td>
                    {% if inventory_form.instance.pk %}{{ inventory_form.DELETE }}{% endif %} {{ inventory_form.inventory_type }}
                </td>
                <td>{{ inventory_form.inventory_description }}</td>
            </tr>
            {% endfor %}
        </tbody>
    </table>
    {{ inventory_formset.management_form }}

    <input type="submit" value="submit" />
</form>

<script src="{% static 'js/jquery.formset.js'%}"></script>
<script type="text/javascript">
    $(function() {
        $('#id_orders_table').formset({
            prefix: '{{ inventory_formset.prefix }}'
        });
    })
</script>

如果您使用的是 materilizecss,它将起作用。或者任何 cssframework。只需找到初始化 select 框的方法即可。并创建一个函数来初始化 select 并在每次在表单集中添加新行时调用它。 它可以通过将该函数传递给我在下面提到的 fomset.which

来完成
function initialize_select(){
    $('select').material_select();

    }

    $(function() {
            $('#id_orders_table').formset({
                'prefix': '{{ inventory_formset.prefix }}',
                'added':initialize_select
            });
        })