ng-repeat 中表单的 AngularJs 动态名称 [英] AngularJs dynamic name for a form inside ng-repeat

查看:23
本文介绍了ng-repeat 中表单的 AngularJs 动态名称的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

<div ng-repeat="itemList 中的项目"><表单名称="item_details" ng-class="validateForm(item_details)">//几个表单元素</表单>

我想动态命名每个表单.例如,将 $index 添加到表单的名称中.我如何实现它?我在 ng-repeat 上尝试了 ng-init 但没有奏效.

解决方案

你可以这样做:

编辑:

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

<div ng-repeat="itemList 中的item" ng-init="formName = 'item_details' + $index"><form name="{{formName}}" ng-class="validateForm(formName)">//几个表单元素</表单>

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

.ng-valid {背景颜色:绿色;}

How do I name a form inside ng-repeat with a dynamic name?

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

I want to name each form dynamically. For example add the $index to the name of the form. How do I achieve it? I tried ng-init on ng-repeat but did not work.

解决方案

You can just do:

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

EDIT:

You can use ng-init as well, like so:

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

If it's just to apply a class based on validity of the form, then you could apply styling to automatically added classes, such as: ng-valid:

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

这篇关于ng-repeat 中表单的 AngularJs 动态名称的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆