Подтвердить что ты не робот

AngularJS: все кнопки внутри формы запускаются?

Я заранее извиняюсь, если это описано в документах, но я не могу найти его.

У меня довольно простая форма, которая использует несколько кнопок, поскольку я использую twitter bootstrap. Проблема в том, что нажатие любой из кнопок в форме, похоже, вызывает событие отправки в angular: в моей форме есть несколько полей ввода, в которых я использую атрибут "require", и поэтому нажатие любой кнопки открывает диалоговое окно, в котором говорится, что Поле, обязательное для заполнения. Это все хорошо и хорошо, за исключением того, что я хочу, чтобы проверка выполнялась только тогда, когда пользователь нажимает кнопку фактического отправки.

Я попытался установить ng-submit в функцию, которая пока возвращает только false, но это не показало никакого эффекта.

Обновление:. Я нашел временное обходное решение, используя директиву, которая использует event.preventDefault(). Однако это кажется немного чрезмерным, а также означает, что я должен прикрепить его к каждой кнопке.

<div class="row-fluid">
    <div class="span12">
        <form ng-submit="onSubmit()" class="form-horizontal">
            <div class="row-fluid">
                <div class="span12">
                    <div class="katana-technician-form">
                        <div class="control-group">
                            <label class="control-label">Tekniker
                                <div class="controls">
                                    <div class="input-append">
                                        <input type="text" class="span2" />
                                        <div class="btn-group">
                                            <!-- Triggers onSubmit-->
                                            <button data-toggle="dropdown" class="btn dropdown-toggle">Velg<span class="caret"></span>

                                            </button>
                                            <ul class="dropdown-menu">
                                                <li>Kake</li>
                                                <li>Bake</li>
                                            </ul>
                                        </div>
                                    </div>
                                </div>
                            </label>
                        </div>
                    </div>
                </div>
            </div>
            <div class="row-fluid">
                <div class="span12">
                    <!-- Triggers onSubmit-->
                    <button type="submit"></button>
                </div>
            </div>
    </div>
    </form>
</div>
</div>
4b9b3361

Ответ 1

Вам следует попробовать установить type="button" на кнопки.

Этот вопрос подробно рассказывает о том, что это делает.