0

フォームの送信イベントが終了した後にモーダルを閉じたいと考えています。私は、次のことをやった:Angular2でフォーム送信イベント後にモーダルを閉じるにはどうすればよいですか?

<form [formGroup]="alertForm" novalidate (ngSubmit)="save(alertForm.value, alertForm.valid)"> 
 
    <div class="row" style="padding-left: 20px; padding-right: 20px;"> 
 
     <div class="input-field"> 
 
     <div class="form-group input-field"> 
 
      <label for="recipientLogin">Available Recipient</label> 
 
      <textarea class="form-control validate" id="recipientLogin" required formControlName="recipientLogin"> </textarea> 
 
     </div> 
 
     </div> 
 

 
     <div class="input-field"> 
 
     <div class="form-group input-field"> 
 
      <select class="form-control" id="alert_level" formControlName="alert_level"> 
 
      <option value="0" selected> Emergency </option> 
 
      <option value="1">Major</option> 
 
      <option value="2">Minor</option> 
 
      <option value="3">Information</option> 
 
      </select> 
 
     </div> 
 
     </div> 
 

 
     <div class="input-field"> 
 
     <div class="form-group input-field"> 
 
      <label for="subject">Subject</label> 
 
      <input type="text" class="form-control validate" id="subject" required formControlName="subject"> 
 
     </div> 
 
     </div> 
 

 
     <div class="input-field"> 
 
     <div class="form-group input-field"> 
 
      <label for="message">Message</label> 
 
      <textarea class="form-control validate" id="message" required formControlName="message"> </textarea> 
 
     </div> 
 
     </div> 
 

 
     <div class="input-field"> 
 
     <div class="form-group input-field"> 
 
      <input type="file" class="form-control" id="media1" /> 
 
      <input type="file" class="form-control" id="media2" /> 
 
      <input type="file" class="form-control" id="media3" /> 
 
     </div> 
 
     </div> 
 
    </div> 
 

 
    <div> 
 
     <div class="col s6"> 
 
     <div style="padding-left: 20px; padding-right: 20px;"> 
 
      <button type="submit" class="btn btn-default input-field">Send</button> 
 
     </div> 
 
     </div> 
 
     <div class="col s6 right-align"> 
 
     <div style="padding-left: 20px; padding-right: 20px;"> 
 
      <button type="submit" data-dismiss="modal" class="btn btn-default input-field">Close</button> 
 
     </div> 
 
     </div> 
 
    </div> 
 
    </form>

これは、フォーム上)(セーブ提出トリガーが、そのためにモーダルを閉じていませんが、私試みたが、保存ボタン上のデータ・却下=「モーダル」とsave()呼び出しをブロックし、モーダルを閉じます。 私はsave()をそのクローズモーダルの後に完了したいと思います。

+0

の可能性のある重複した[Iは、角2におけるモーダルを閉じることができますどのように?](https://stackoverflow.com/questionsを経由して閉じることができます

<button #btnId type="submit" />

/35354041/how-can-i-close-a-angular-in-angular-2) – developer033

答えて

0

はフォームを仮定するとブートストラップモーダルの内側に、あなたはモーダルを閉じます $('#modalID').modal("hide")を使用することができます。

完全参照チェックの場合here

+0

私もこれを試しましたが、私はangular2を使っているので、$ commandを認識しません。 –

+0

アイデアは同じですが、角度的にモーダルを参照する必要があります。テンプレート内の は、モーダル用途のテンプレート参照を - #modal として、コンポーネント内に追加します。 @ViewChild( 'モーダル')モーダル:ElementRef; そして成功を保存した後add - this.modal.hide(); –

+0

plunkrリンクを追加することができれば、私たちはより簡単に助けてくれるでしょう –

0

また、保存呼び出しが成功すると、[閉じる]ボタンを使用してモーダルを閉じることができます。あなたのコンポーネントがthis.btnId.click()

+0

私は送信ボタンのonClickに2つのタスクを必要とします:1)save()への呼び出し2)closeモーダル –

関連する問題