AngularJs:如何在表单提交上获取ng-repeat输入/复选框值?

时间:2015-10-12 19:14:43

标签: javascript html angularjs forms

在我的表单中有输入字段和复选框,重复如下。

<form class="form-horizontal popupform" novalidate>
    <input type="text" data-ng-model="returns.altCity">
    <input type="text" data-ng-model="returns.altZip">
    <input type="text" data-ng-model="returns.altName">

 <table class="table table-striped">
       <thead>
        </thead>
        <tbody>
<tr data-ng-repeat="item in order_items">
         <td>{{item.id}}</td>
         <td>{{item.price}}</td>
        <td>
           <input name="quantity-item.id"  type="number"
                  data-ng-model="item.quantity"
                   value="returns.id">
         </td>
         <td align="center">
             <input type="checkbox" checklist-model="item.checkOrder"
                checklist-value="returns.id" checked="checked">
                  <label>&nbsp;</label>
</td>
            </tr>
                            </tbody>
                        </table>
 <button type="button" data-ng-click="saveReturnCases(returns)">Submit</button>

</form>

我想在按钮点击中获取数字输入字段和复选框值。如何获得重复的字段值?

1 个答案:

答案 0 :(得分:1)

您可以将值存储在数组中,使用ngRepeat递增的$ index值,然后提交此数组($ scope.quantities和$ scope.checksOrder)。

<tr data-ng-repeat="returns in item.order_items">
         <td>{{item.id}}</td>
         <td>{{item.price}}</td>
        <td>
           <input name="quantity-item.id"  type="number"
                  data-ng-model="quantities[$index]"
                   value="returns.id">
         </td>
         <td align="center">
             <input type="checkbox" checklist-model="checksOrder[$index]"
                checklist-value="returns.id" checked="checked">
                  <label>&nbsp;</label>
</td>
            </tr>
                            </tbody>
                        </table>
 <button type="button" data-ng-click="saveReturnCases()">Submit</button>