У меня возникла проблема с модельными значениями угловых. У меня есть три переменные области действия, связанные с входами с помощью нг-модели с помощью объекта под названием cfa
: первый amt_type
, второй amount
и третий comp
, в котором значение для comp
будет зависеть от первых 2-х значений, то amt_type
и amount
, Но проблема в том, что когда я пытался отображать cfa.comp, он не отображается, и его можно отображать только при вводе ввода, привязанного к модели cfa.comp
. Как я могу получить значение ng-model 'cfa.comp' или есть какой-либо угловой метод для решения моей проблемы? Вот фрагмент кода. Большое спасибо за помощь. :)Невозможно получить значение ng-модели, если значение назначено из другой ng-модели
var app = angular.module('myApp', []);
app.controller('sampleCtrl', function($scope){
$scope.cfa = {};
});
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
</head>
<body ng-app="myApp">
<div ng-controller = "sampleCtrl">
<select ng-model="cfa.amt_type">
<option value="D">Daily</option>
<option value="W">Weekly</option>
<option value="M">Monthly</option>
</select>
<input type="number" ng-model="cfa.amount" />
<input ng-if="cfa.amt_type == 'D'" type="number" ng-model="cfa.comp" value="{{cfa.amount * 7}}" />
<input ng-if="cfa.amt_type == 'W'" type="number" ng-model="cfa.comp" value="{{cfa.amount}}" />
<input ng-if="cfa.amt_type == 'M'" type="number" ng-model="cfa.comp" value="{{cfa.amount/4}}" />
{{cfa.comp}}
</div>
</body>
</html>
Дополнительная информация:
Коды выше будет повторяться несколько раз с разными названиями моделей и будет использоваться, чтобы получить общее количество. Скажи:
<input ng-if="cfa.amt_type == 'D'" type="number" ng-model="cfa.comp1" value="{{cfa.amount * 7}}" />
<input ng-if="cfa.amt_type == 'W'" type="number" ng-model="cfa.comp1" value="{{cfa.amount}}" />
<input ng-if="cfa.amt_type == 'M'" type="number" ng-model="cfa.comp1" value="{{cfa.amount/4}}" />
<input ng-if="cfa.amt_type == 'D'" type="number" ng-model="cfa.comp2" value="{{cfa.amount * 7}}" />
<input ng-if="cfa.amt_type == 'W'" type="number" ng-model="cfa.comp2" value="{{cfa.amount}}" />
<input ng-if="cfa.amt_type == 'M'" type="number" ng-model="cfa.comp2" value="{{cfa.amount/4}}" />
<input type="number" ng-model="cfa.total" value="{{cfa.comp1 + cfa.comp2}}" />
Это нормально для меня, если я положу его в заявлении сНа или любых HTML-тегах, но как я могу поместить значение в переменном или каком-либо образом просто получить Общая? Спасибо :)
Try объявляют 'cfa.comp' в вашем контроллере, как '$ scope.cfa = {Комп: 0};'. – DieuNQ
Хорошо, пробовал. Спасибо за ответ :) –