0

いくつかのAngular検証を備えた単純なフォームがあるとしましょう:

<form name="myForm">
    <input name="{{myField}}" 
            type="text" 
            ng-model="obj.myField" 
            required />
    <div class="text-danger" ng-show="myForm[myField].$invalid">
        <div ng-show="myForm[myField].$error.required">
            Field is required.
        </div>
    </div>
</form>

ここで、ハードコードされた文字列の代わりにフォーム名に変数を使用したいとしましょう:

<form name="{{formName}}">

myForm[myField].$invalidフォームを変更しmyForm[myField].$error.requiredて引き続き参照するにはどうすればよいですか?

4

1 に答える 1

0

現在のAngularでは、フォーム入力要素に動的に名前を付けることはできません。フォームのコレクションに対してこれを行う場合、ng-formディレクティブを使用して次のようなことを行うことができます (jade 構文で):

div(ng-repeat = "user in users", class="form-group")
    ng-form(name="userFieldForm")
      input(type="text", required, ng-model="user.email", name="email")
      p(class="help-block" ng-show="userFieldForm.email.$invalid">Valid Email Address required
于 2014-11-17T21:49:29.463 に答える