ng-repeatを使用して動的にフォームフィールドを作成しています。私はいくつかの入力/選択肢を持つdivを持っていると私は "追加"ボタンをクリックすると、それらは重複取得します。これまでのところ問題はありません。しかし、私はまた、送信ボタンがクリックされたときにフォーム検証を実行したい。ng-repeatでフィールドを動的に追加するときにフォームが送信される
.ng-submitted select.ng-invalid, .ng-submitted input.ng-invalid {
background-color: red;
}
予想通りこれは私が動的にフォームへの入力を追加していない提供作品:今、私は、フィールドが送信ボタンを押したときに無効であるユーザーに警告するために、以下をしています。フォームに新しい入力を追加すると、.ng-submittedがフォーム要素に追加されます(押されずに送信されます)。必要な入力と無効な入力はすべて赤色に変わります。 https://plnkr.co/edit/hDe40mBDjw9aDSDoAhe6?p=preview
単に要素を追加するだけで入力を赤色にしたくないだけでなく、誰かが送信ボタンを押していない限り、フォームを送信したくないということもあります。角形で提出することについて私が理解していないものがなければならず、助けに感謝するはずです。
EDIT:さらにテストすると、ボタンの要素が問題であることがわかります。
<button ng-click="addRow()">add</button>
しかし、これは正常に動作します:これはしかし、なぜ
<input type="button" ng-click="addRow()" value="add"/>
わかりません。
ええ、ちょうど私の愚かな間違いを実現しました。しかし、ありがとう。 – James