1

我在使用指令中的ng-repeat值时遇到问题。ng-show

我尝试了许多解决方案,"myForm.".{{value}}.".$error.required"并且没有指令{{}},甚至没有下面的示例{{}}ng-show

看来,投入的价值ng-show搞砸了。ng-repeat在命名我的输入和创建输入控制条件时,我希望能够使用字段中的变量(由 生成)创建多个字段。

<form name="myForm">
   <div ng-repeat="fields in logEntry.StringValues">
       {{fields.Title}} <input type="text" name="{{fields.PropertyInfoName}}" ng-model="user" required>

       <span class="error" ng-show="myForm.fields.PropertyInfoName.$error.required">
          Required!
       </span><br>
   </div>

编辑:以下代码有效,但没有我需要的 ng-repeat。

<form name="myForm">
  SomeText Here: <input type="text" name="testName" ng-model="user" required>
    <span class="error" ng-show="myForm.testName.$error.required">
      Required!
    </span><br>
</form>
4

3 回答 3

0

尝试去掉指令中的双括号 {{}}。如果您需要更具体的帮助,请发布相应的 javascript 代码。

 <form name="myForm">
      <div ng-repeat="fields in logEntry.StringValues">
        {{fields.Title}} <input type="text" name="fields.PropertyInfoName" ng-model="user" required>
        <span class="error" ng-show="myForm.fields.PropertyInfoName.$error.required">
          Required!
        </span><br>
      </div>
    </form>
于 2014-07-03T12:24:17.270 回答
0

记住它只是 javascript

 "myForm.".{{value}}.".$error.required"

只是

 myForm[value].$error.required

但是,您将需要创建指令来执行您想做的事情。作为在 Angular 中实现的非常相似的示例,您可以查看https://github.com/gaslight/angular-schema-form 这里是演示: http: //gaslight.github.io/angular-schema-form /

于 2014-07-03T13:19:47.550 回答
0

解决方案是“由于您不能使用插值动态生成输入元素的名称属性,因此您必须将每组重复输入包装在 ngForm 指令中,并将它们嵌套在外部表单元素中。” 下面链接的解决方案通过为每个嵌套表单提供自己的范围来实现这一点。

https://stackoverflow.com/a/14379763/2260604

于 2014-07-03T13:13:14.937 回答