1
を変更するためのNGリピート内のフォームの動的な名前はanswerで提案されている。しかし、私の問題は、配列(itemListのは)変更は名前が同じで形成値ときです。私はフォーム名がインデックス値に基づいて更新される必要があります。AngularJs配列
を変更するためのNGリピート内のフォームの動的な名前はanswerで提案されている。しかし、私の問題は、配列(itemListのは)変更は名前が同じで形成値ときです。私はフォーム名がインデックス値に基づいて更新される必要があります。AngularJs配列
$index
を使用するのではなく、いくつかのユニークなプロパティを使用することができます。アイテムには、アイテムの一意性を定義する独自のid
プロパティがあります。だから、ng-init
は
<div ng-repeat="item in itemList" ng-init="formName = 'item_details' + item.id">
<form name="{{formName}}" ng-class="validateForm(formName)">
//few form elements
</form>
</div>
formName = 'item_details' + item.id"
がでも私はあなたがユニークな名前を持つ各フォームを作っているの背後に必要されるかと思ってるように見えるだろうか?あなたはネストされたフォームを持つことができ、innerForm
は孤立していることが検証されます。その後、有効性確認の方法は、innerForm
がすべて有効になると、outForm
が有効になります。 innerForm
のいずれかが無効の場合、outerForm
は無効になります。
<ng-form ng-repeat="item in itemList" name="outerform">
<form name="innerForm" ng-class="validateForm(innerForm)">
//few form elements
</form>
</div>
返信いただきありがとうございます。 'name =" innerForm {{$ index}} "のようなフォーム名を初期化しています。 – Kartik
@ Kartik no、それは '$ index'であってはいけません。アイテムの削除時に同じになるはずです。私が提案したものを試しましたか? –
@Kartikは私の答えを助けましたか? –