2016-01-12 7 views
1

Модаль имеет форму, и я хочу закрыть модальную форму, когда пользователь нажимает кнопку отправки. Упрощенная форма выглядит так:Закрытие модальности при нажатии на форму отправить

<div class='modal fade' id='{{ module.name }}Modal' role='dialog'> 
<div class='modal-dialog modal-lg'> 
    <div class='modal-content'> 
     <form ng-submit='submitModule(module)'> 
      <div class='modal-body'> 
       ... 
      </div> 
      <div class='modal-footer'> 
       <button type='submit' class='btn btn-primary'>Run</button> 
       <button type='button' class='btn btn-default' data-dismiss='modal'>Cancel</button> 
      </div> 
     </form> 
    </div> 
</div> 

Вы можете увидеть две кнопки. Кнопка закрытия использует data-dismiss='modal', который отлично работает. Но я не могу использовать это на кнопке отправки, потому что это «отменяет» функцию отправки ng-submit=submitModule(); модальный будет закрыт, но функция не будет вызвана.

Может ли решение закрыть модальный из функции submitModule()? Но как я могу получить от модальности?

+0

Вы используете bootstrap modal? –

ответ

0

Использование библиотеки радиально-UI - модальный: скачать уменьшенная версия here:

Сначала включить библиотеку в вашем модуле:

angular.module('myModule', ['ui.bootstrap']); 

Затем в контроллере, вы можете закрыть модальный в пределах подчиненная форма функции:

$scope.submitModule = function(module) { 
    dialog.close(result); 
    // REST OF YOUR CODE TO HANDLE FORM INPUT 
} 
+0

Я добавил 'ui-bootstrap.min.js' в тег'

1

Вы можете добавить один небольшой код JQuery в вашем HTML файл ... Добавить OnClick атрибута в кнопка.

<div class='modal fade' id='{{ module.name }}Modal' role='dialog'> 
<div class='modal-dialog modal-lg'> 
<div class='modal-content'> 
    <form ng-submit='submitModule(module)'> 
     <div class='modal-body'> 
      ... 
     </div> 
     <div class='modal-footer'> 
      <button type='submit' class='btn btn-primary' onclick="$('.modal').modal('hide')">Run</button> 
      <button type='button' class='btn btn-default' data-dismiss='modal'>Cancel</button> 
     </div> 
    </form> 
</div> 

2

Вы можете добавить как многие вызовы метода к (ngSubmit), т.е.

класса формы = "хорошо" (ngSubmit) = "addUserModal.hide(); AddUser (модель) ; userForm.reset() "# userForm =" ngForm "

Смежные вопросы