2017-01-21 9 views
-1

角度2のフォームで作業していたが、問題が発生した。次の形式を使用して、私の提出時には動作しません:角度2フォーム提出

<form #addForm="ngForm" (ngSubmit)="add()"> 
    <div class="input-group"> 
    <span class="input-group-btn"> 
     <button [class.disabled]="!addForm.valid" type="submit" 
       class="btn btn-primary col-xs-12">+</button> 
    </span> 
    <input required name="name" type="text" class="form-control" placeholder="name" [(ngModel)]="newAlbum.name"> 
    </div> 
</form> 

しかし、ボタンに(click)="add()"を追加することによって、私は、Enterキーを押してフォームを送信することができます。誰も私にこれを説明することができます。 E私はあなたがモデルとテンプレート駆動型の間に混乱していると思うonSubmit(myForm)

:をonSubmitで

+0

「私は理解できませんが、追加する(クリックする)= "add()"私は入力を押してフォームを送信できます。手段。また、「意味がない」とは何ですか?あなたは、期待される行動が何であり、現在の行動が何であるかを再度説明しようと思いますか? –

+1

あなたのフォームはいくつかの悪い習慣を使っているようですが、正しいフォームの実装については、 –

+0

@ nusje2000のhttps://angular.io/docs/ts/latest/guide/forms.htmlをもう一度見てください。私はあなたの問題を再現することができませんでした: – Alex

答えて

0

<button 
    [disabled]="!addForm.valid" 
    (click)="add()">+</button> 

形式が正しくない場合、それ自体が無効になり、ボタンを結合[disabled]を添加することにより。これは正しい実装方法ではないかもしれませんが、うまくいきます。誰かがより良い解決策を持っているならそれを言いなさい、しかし今のところこの問題は解決されます。

0

は、フォームIを渡す必要があります呼び出します。最初にそれらを通過してください。解決策を見つけた場合

+0

これは角度のある文書の文書です: nusje2000

関連する問題