我當文檔加載,使其能夠點擊與類「頭」的每個元素擴大,顯示出更多的細節,被稱爲事件:文件Click事件停止了過濾
$(document).ready(function() {
InitClick();
});
這裏功能:
function InitClick() {
$('.header').click(function() {
$(this).nextUntil('tr.header').slideToggle();
});
}
現在的問題是,當結果得到過濾,它就會導致該點擊事件停止,直到我重新初始化它,然後它會重新開始工作......直到數據過濾再次或必須更新。
現在我的主要問題是,有沒有人得到一個可以幫助我的東西的鏈接,我試過把它放在$ watch上,但是我保留的主要問題是在過濾的數據返回之前調用它,導致它在數據存在之前進行初始化。
這是MyApp.js如果有幫助嗎?
var MyApp = angular.module('MyApp', []);
MyApp.controller('MyAppCtrl', function ($scope, $filter) {
$scope.Users = tJSONData;
$scope.currentPage = 0;
$scope.pageSize = 3;
$scope.Pages = [];
$scope.search = '';
$scope.Completed = '';
$scope.getData = function() {
return $filter('filter')($scope.Users, $scope.search || $scope.Completed);
}
$scope.numberOfPages = function() {
return Math.ceil($scope.getData().length/$scope.pageSize);
}
$scope.$watch('numberOfPages()', function (newVal, oldVal) {
var tPages = [];
for (i = 0; i < $scope.numberOfPages(); i++) {
tPages.push(i + 1);
}
if ($scope.currentPage >= $scope.numberOfPages()) {
$scope.currentPage = $scope.numberOfPages() - 1;
}
if ($scope.currentPage == -1) {
$scope.currentPage = 0;
}
return $scope.Pages = tPages;
})
$scope.updatePage = function() {
$scope.$apply(function() {
$scope.Users = tJSONData
})
}
$scope.limitPagination = function() {
if ($scope.currentPage == 0) {
return $scope.currentPage;
} else if ($scope.currentPage == 1) {
return $scope.currentPage - 1
} else {
return $scope.currentPage - 2;
}
}
});
MyApp.filter('startFrom', function() {
return function (input, start) {
start =+ start; //parse to int
return input.slice(start);
}
});
任何幫助表示讚賞:)
不幸的是,改變它停止發生的事件:(感謝您的嘗試:) –
我給你的東西應該已經完成了。它拋出任何控制檯錯誤或任何東西? – samanime
沒有,我唯一能想到的就是添加處理程序,然後當添加一個新對象時,我不認爲它會有處理程序。我需要找出一種方法來調用它,每次它改變,但我不是100%確定如何做到這一點。至於爲什麼它阻止它工作,不是一個線索。 –