0
У меня есть таблица generetad с помощью PHP, а и обрабатываются AngularJS:AngularJS - Директива по строкам в таблице
<table>
<tr>
<th>Col 1</th>
<th>Col 2</th>
<th>Col 3</th>
</tr>
<?php
while(...){
?>
<tr>
<td>
<input type="text" ng-model="calcolo.ore">
</td>
<td>
<input type="text" ng-model="calcolo.ricavo">
</td>
<td>
<input type="text" ng-model="calcolo.abbatt">
</td>
<td>
<input type='text' ng-show="calcolo.abbatt" value='{{netti() | currency:"€"}}'>
</td>
</tr>
<?php } ?>
angular.module("myApp", ['ng-currency'])
.controller("userController",
function($scope) {
$scope.fattlord = function() {
return ($scope.calcolo.ore * $scope.calcolo.ricavo)
};
$scope.netti = function() {
return ($scope.calcolo.ricavo-(($scope.calcolo.abbatt * $scope.calcolo.ricavo)/100))
};
});
Конечно, когда я пишу в ввод текста, все входы с той же ng-моделью получают одинаковое значение.
Есть ли способ в Угловом, возможно, с идентификаторами, который позволяет мне скомпилировать ряд за строкой, без изменений других?
Извините за плохой английский и благодарю вас!
PS: Я не могу использовать ng-repeat.
Вы должны создать Директиву ([Документация] (https://docs.angularjs.org/guide/directive)) – gianlucatursi
Или определить контроллер для каждого
«все входы с той же ng-моделью получают одно и то же значение» -> это то, что должно было случиться. Кстати, в вашем коде ng-model все разные. Можете ли вы уточнить, какое поведение вы хотите достичь? – elfan
ответ
Как отметил @yBrodsky в комментарии, используйте контроллер на каждом
<tr>
, так что у вас может быть разный объем для каждого<tr>
.источник
2016-11-18 07:36:21 elfan
Вы можете использовать массив для
calcolo
и увеличения индекса для каждой строки в PHP:ng-model="calcolo[0].abbatt"
,ng-model="calcolo[1].abbatt"
и т.д.Тогда в вашем контроллере вы можете перебираем массив Calcolo.
источник
2016-11-18 07:47:58
Смежные вопросы