0
我正在嘗試使用特定類名稱對元素進行計數,該名稱將作爲切換控件的一部分添加和刪除。這意味着報告的計數不正確。按類名計數元素不能按預期工作
我注意到我目前的實現跳過了第一個選定的元素(即不計數),並且只開始第二個元素。
我的代碼如下:
查看
<div ng-controller="MyCtrl">
<div class="item item-button-right" ng-repeat="i in [1, 2, 3, 4]">
Full Colour
<p>£50 and up to 1 hour</p>
<button class="button button-custom" ng:click="bookingSelected = !bookingSelected;
$parent.$parent.activeProfileHeader = false;
$parent.$parent.displayBookingFooter(true);" ng-class="{ 'button-custom-padding': bookingSelected === true,
'button-positive': bookingSelected === false,
'booking-selected' : bookingSelected === true,
'button-balanced': bookingSelected === true}">{{bookingSelected && '✔' || 'Book'}}</button>
</div>
<br>
Total: {{numItems('booking-selected')}}
</div>
控制器
var myApp = angular.module('myApp', []);
//myApp.directive('myDirective', function() {});
//myApp.factory('myService', function() {});
function MyCtrl($scope, $window) {
$scope.bookingSelected = false;
$scope.numItems = function(className) {
return $window.document.getElementsByClassName(className).length;
};
}
小提琴:http://jsfiddle.net/ha5oac6v/
更新:對不起,代碼在jsfiddle不起作用。
您的代碼犯規的工作,因爲你拼錯NG-點擊。檢查你寫的ng:點擊。此外,計算類的這個東西似乎不是一個好主意。爲什麼不把選定的項目推入數組並計算數組長度呢? – yBrodsky
http://jsfiddle.net/rvukp5Lh/基本上它的工作原理是downvoted。 –
我將如何將所選項目推送到數組中? – methuselah