我需要一个帮助。我需要在使用angular.js选择复选框时获取行数据列表。我正在解释下面的代码。
<tbody id="detailsstockid">
<tr ng-repeat="p in viewIncompleteData">
<td>
{{$index+1}}<input type="checkbox" ng-model="checkboxModel.value1">
</td>
<td>
{{p.Product_name}}
</td>
<td>
{{p.Discount}}
</td>
<td>
{{p.Offer}}
</td>
<td>
{{p.unit_cost_price}}
</td>
<td>
{{p.unit_sale_price}}
</td>
<td>
{{p.quantity}}
</td>
<td>
</td>
</tr>
</tbody>
<div style="text-align:center; padding-top:10px;" ng-show="updateButton">
<input type="button" class="btn btn-success" ng-click="UpdateProductstockData();" id="addProfileData" value="Add Total"/>
</div>
当用户首先点击Add Total
按钮时,如果选中了任何复选框,它将检查验证。当任何复选框将选择相应的行数据时,将在点击事件功能中获取。请帮助我
答案 0 :(得分:1)
<tbody id="detailsstockid">
<tr ng-repeat="p in viewIncompleteData">
<!-- Added new property to your scope variable viewIncompleteData -->
<td>{{$index+1}}<input type="checkbox" ng-model="p.isChecked"> </td>
<td>{{p.Product_name}}</td>
<td>{{p.Discount}}</td>
<td>{{p.Offer}}</td>
<td>{{p.unit_cost_price}}</td>
<td>{{p.unit_sale_price}}</td>
<td>{{p.quantity}}</td>
<td>
</td>
</tr>
</tbody>
<div style="text-align:center; padding-top:10px;" ng-show="updateButton">
<input type="button" class="btn btn-success" ng-click="UpdateProductstockData();" id="addProfileData" value="Add Total"/>
</div>
现在您可以检查变量viewIncompleteData[i].isChecked
以了解已检查的内容。
$scope.UpdateProductstockData = function(){
angular.forEach($scope.viewIncompleteData, function(value, index){
if(value.isChecked){
// this row is selected
}
});
}
希望这会对你有帮助......
答案 1 :(得分:0)
据我所知,您应该使用数组来跟踪相应列的复选框值(例如ng-model =&#34; checkboxModel.value1 [$ index]&#34;)。 现在,当您单击ADD TOTAL按钮时,调用一个函数。功能应该是这样的:
function(){
for(var i=0;i<$scope.viewIncompleteData.length;i++){
if(checkboxModel.value1[i]==true){
var data=$scope.viewIncompleteData[i];
}
}
}
现在,当选中复选框时,数据就是您获取的行数据。