0

我在 jquery 中创建动态复选框,所有复选框都是必需的。我无法让 formvalidation.io 工作。

这是放置复选框的html:

                        <div class="card-body">
                            <div class="form-group" id="divRequiredFeeList">
                            </div>
                        </div>

这是生成复选框的jquery:

   $("<div />", { class: 'col-xl-12' })
                .append($("<div />", { "class": "custom-control custom-control-info custom-checkbox", "style": "display:inline" }))
                .append($("<input />", { "type": "checkbox", "id": "cb" + idkey, "class": "custom-control-input", "name": "chkRequiredFees[]", "data-fv-field": "chkRequiredFees[]" }))
                .append($("<label />", { "for": "cb" + idkey, "class": "custom-control-label required", "text": name }))
                .appendTo($('#divRequiredFeeList'));

这是按预期工作的。这是我的验证:

                'chkRequiredFees[]': {
                    validators: {
                        choice: {
                            message: 'Choose all required fees for acknowledgement.'
                        }
                    }
                },

此外,在构建动态复选框以确保所有复选框都被选中后,我有这个,其中“otherFees.length”是生成的动态复选框的数量。

$('#frmFacilityReserve')
                    .formValidation('updateOption', 'chkRequiredFees[]', 'choice', 'min', otherFees.length);

如果我通过将复选框直接放在 html 中进行测试,它可以工作。我已经检查了生成的 html 是否仅对复选框进行硬编码,它似乎是一样的。我不知道为什么在动态构建复选框时它不起作用。我已经为此工作了 2 天,尝试了我能找到的一切。

任何帮助将不胜感激。

4

0 回答 0