繁体   English   中英

AngularJs ng-repeat中表单的动态名称

[英]AngularJs dynamic name for a form inside ng-repeat

如何使用动态名称在ng-repeat中命名表单?

<div ng-repeat="item in itemList">
 <form name="item_details" ng-class="validateForm(item_details)">
   //few form elements
 </form>
</div>

我想动态命名每个表单。 例如,将$ index添加到表单的名称。 我该如何实现? 我在ng-repeat上尝试过ng-init但是没有用。

你可以这样做:

<form name="item_details{{$index}}" ng-class="validateForm('item_details'+$index)">

编辑

您也可以使用ng-init ,如下所示:

<div ng-repeat="item in itemList" ng-init="formName = 'item_details' + $index">
 <form name="{{formName}}" ng-class="validateForm(formName)">
   //few form elements
 </form>
</div>

如果只是根据表单的有效性应用类,那么您可以将样式应用于自动添加的类 ,例如: ng-valid

.ng-valid {
   background-color: green;
}

您可以使用括号表示法通过动态名称访问表单实例:

<div ng-repeat="item in itemList">
  <form name="item_details{{$index}}" ng-class="validateForm(this['item_details' + $index])">
    //few form elements
  </form>
</div>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM