Javascript 在嵌套角度重复中维护计数器
在我的文档的更高层,我有一个实际的表示层来组织购物车中的信息。没关系 在底部,我使用它创建表单变量,当用户单击Submit按钮时,表单变量将被提交Javascript 在嵌套角度重复中维护计数器,javascript,angularjs,Javascript,Angularjs,在我的文档的更高层,我有一个实际的表示层来组织购物车中的信息。没关系 在底部,我使用它创建表单变量,当用户单击Submit按钮时,表单变量将被提交 <form> <p style="text-align:right;"> <div data-ng-repeat="student in students"> <span data-ng-repeat="fee in student.fees" data-n
<form>
<p style="text-align:right;">
<div data-ng-repeat="student in students">
<span data-ng-repeat="fee in student.fees" data-ng-if="fee.checked">
<input type="text" name="item_number_{{}}" value="{{fee.fee_type_id}}" />
<input type="text" name="item_name_{{}}" value="{{fee.fee_type_name}}" />
</span>
</div>
</p>
</form>
付款供应商要求将其编号为item_number_0、item_number_1、item_number_2等。这意味着,如果我要以嵌套方式循环学生,则需要在学生之间维护计数器。所需的呈现HTML输出如下所示:
<form>
<p style="text-align:right;">
<div data-ng-repeat="student in students">
<span data-ng-repeat="fee in student.fees" data-ng-if="fee.checked">
<input type="text" name="item_number_0" value="{{fee.fee_type_id}}" />
<input type="text" name="item_name_0" value="{{fee.fee_type_name}}" />
</span>
<span data-ng-repeat="fee in student.fees" data-ng-if="fee.checked">
<input type="text" name="item_number_1" value="{{fee.fee_type_id}}" />
<input type="text" name="item_name_1" value="{{fee.fee_type_name}}" />
</span>
</div>
<div data-ng-repeat="student in students">
<span data-ng-repeat="fee in student.fees" data-ng-if="fee.checked">
<input type="text" name="item_number_2" value="{{fee.fee_type_id}}" />
<input type="text" name="item_name_2" value="{{fee.fee_type_name}}" />
</span>
<span data-ng-repeat="fee in student.fees" data-ng-if="fee.checked">
<input type="text" name="item_number_3" value="{{fee.fee_type_id}}" />
<input type="text" name="item_name_3" value="{{fee.fee_type_name}}" />
</span>
<span data-ng-repeat="fee in student.fees" data-ng-if="fee.checked">
<input type="text" name="item_number_4" value="{{fee.fee_type_id}}" />
<input type="text" name="item_name_4" value="{{fee.fee_type_name}}" />
</span>
</div>
</p>
</form>
我想做两件事中的一件:
根据我之前链接到的答案,这里有一支适用于您的用例的工作笔: 代码如下所示:
<div ng-repeat="student in students" ng-init="studentIndex = $index">
<span ng-repeat="fee in student.fees" ng-if="fee.checked" ng-init="totalIterations[studentIndex] = totalIterations[studentIndex - 1] + student.fees.length; currentIteration = totalIterations[studentIndex-1] + $index;">
<input type="text" name="{{'item_number_' + currentIteration}}" ng-value="fee.fee_type_id" />
<input type="text" name="{{'item_name_' + currentIteration}}" ng-value="fee.fee_type_name" />
</span>
</div>
根据我之前链接到的答案,这里有一支适用于您的用例的工作笔: 代码如下所示:
<div ng-repeat="student in students" ng-init="studentIndex = $index">
<span ng-repeat="fee in student.fees" ng-if="fee.checked" ng-init="totalIterations[studentIndex] = totalIterations[studentIndex - 1] + student.fees.length; currentIteration = totalIterations[studentIndex-1] + $index;">
<input type="text" name="{{'item_number_' + currentIteration}}" ng-value="fee.fee_type_id" />
<input type="text" name="{{'item_name_' + currentIteration}}" ng-value="fee.fee_type_name" />
</span>
</div>
Try name=“item_number”{{{$parent.$index}}看看这里的答案(更新):@tomsterritt我在这里尝试了类似的方法,但计数器没有正确递增`Try name=“item\u number”{{{$parent.$index}”查看此处的答案(更新):@tomsterritt我在此处尝试了类似的方法,但计数器没有正确递增。``