有一个带有可编辑单元格的表,可以在其中将价格和税款添加到项目并最终保存。我使用的是用于税收选择的多选下拉菜单,对于一个项目来说可以是多个选择。
<tbody>
<tr role="row" ng-repeat="c in productData track by $index">
<td><input type="checkbox" ng-model="c.addToLocation" ng-click="toggleSelection(c);" name="group"></td>
<td class="center">{{$index+1}}</td>
<td>
<img width="40" height="40" data-ng-src="{{c.imageUrl}}" alt="" ng-if="c.imageUrl.length>1">
</td>
<td>
<h5>{{c.productName}}</h5>
</td>
<td>
<input class="form-control" ng-show="editCell==true && $index==editIndex && c.addToLocation==true" type="number" ng-model="c.price">
<h5 ng-show="editCell==false || $index!=editIndex || c.addToLocation==false">{{c.price}}</h5>
</td>
<td>
<multiselect header="{{multiHeader.itemTaxHeader}}" multiple="true" ng-show="editCell==true && $index==editIndex && c.addToLocation==true" ng-model="c.taxList" options="tax.name + ' (' + tax.percentage + '%)' for tax in taxList" ng-change="taxSelected(c)"></multiselect>
<div ng-show="editCell==false || $index!=editIndex || c.addToLocation==false"><h5 ng-repeat="d in c.taxList">{{d.name}},</h5></div>
</td>
<td>
<button title="Add Item" ng-show="c.addToLocation" ng-click="makeEditable($index,c)" class="btn btn-round btn-info">
<i class="glyph-icon icon-edit"></i>
</button>
</td>
现在,当我在多重选择中选择税项时,它可以正常工作,并且我在控制器中执行以下操作以获取计数并显示
$scope.$watch('selItemTaxes', function () {
if ($scope.selItemTaxes.length > 0)
$scope.multiHeader.itemTaxHeader = $scope.selItemTaxes.length + ' Taxes Selected';
else
$scope.multiHeader.itemTaxHeader = 'Nothing Selected';
});
当我在控制台中调试时,一切都很好,但是在标记中,它不显示所选税项的更新计数,而是先前的更改。已使用超时,但仍未显示。谁能建议我要去哪里错了?