Многократная проверка CheckBox с использованием пружины JS?

Я создаю динамические флажки во время выполнения. Мое требование - подтвердить хотя бы один флажок или нет. Я делаю это с помощью SpringJS. Но чтобы проверить, я должен передать checkBox Id в Spring Validation, но этот массив ID создается во время выполнения. Как я могу достичь этого? Я перепробовал все решения, но у меня это не сработало. Я делаю так, что это работает, если я жестко код ID флажка.

<script type="text/javascript">
    Spring.addDecoration(
        new Spring.ElementDecoration({
            elementId: '_CheckBox_ids',
            widgetType: 'dijit.form.CheckBox',
            widgetModule: 'dijit.form.CheckBox',
            validate: function () {
                if (dojo.query("#roo_apiUser_profile > input[type=checkbox]", 'dijit.form').filter(function (n) {
                    return n.checked;
                }).length > 0) {
                    return true;
                } else {
                    alert('choose at least one profile');
                    return false;
                }
            },
            widgetAttrs: {
                required: true
            }
        }));
</script>

1 ответ

Решение

Вы можете добавить onsubmit атрибут в теге формы и вызвать функцию, которая выполняет проверку на флажки.

Кроме того, вы можете создать собственное расширение AbstractElementDecoration (определено в spring.js) с помощью dojo.declare и перейти к validate Приписать функцию, которая сделает проверку флажков для вас. За elementId вы можете пройти в id из div элемент, который содержит все флажки. Spring.ValidateAllDecoration звонки Spring.validateAll функция. Убедитесь, что вы делаете необходимые настройки в вашем AbstractElementDecoration расширение, так что нет исключений в Spring.validateAll,

Другие вопросы по тегам