在AngularJS中
目标:如何获取所有类别(按钮)在页面加载或刷新时突出显示和初始化(例如可能使用ng-init或ng-options)
控制器
$scope.selectCategory = function(newCategory) {
$scope.bottomValue = newCategory;
selectedCategory = newCategory;
$scope.selectedPage = 1;
}
$scope.categoryFilterFn = function(product) {
return selectedCategory == null ||
product.category == selectedCategory;
}
$scope.getCategoryClass = function(category) {
return selectedCategory == category ? productListActiveClass : "";
}
$scope.getCategory = function(category) {
return categorySelected == category;
}
HTML
<a ng-click="selectCategory()" class="btn btn-block btn-default btn-lg" style="margin-bottom:6px">All Categories</a>
<a ng-repeat="item in data.products | filter:{edition: data.editions[whichEdition].name}| filter:approved=true | orderBy:itemOrder:direction | orderBy:'-category' | unique:'category' " ng-click="selectCategory(item)" class=" btn btn-block btn-default btn-lg"
ng-class="getCategoryClass(item)">
{{item}}
</a>
答案 0 :(得分:2)
我更喜欢在控制器而不是ng-init中使用init函数,因为在ng-init之前调用了init函数,我已准备好渲染所有内容。 在您的视图控制器中。
<input type="checkbox" id="checkbox" />
$(window).load(function(){
$('#checkbox').prop( 'checked', true );
});
答案 1 :(得分:2)
所以无论你想在页面加载上做什么,都可以在$scope.init
这样的单一方法中编写一个方法,并使用它来调用它
<div ng-controller="controllerName" ng-init="init()">
这是,如果你想在页面加载上做所有事情。
答案 2 :(得分:0)
使用anguls的$ window.onLoad。
$window.onload = function(param) {
//your code here
alert(param);
}
或者您可以将ng-init指令与ng-controller -
一起使用<div ng-controller="yourController" ng-init="yourMethod(param)">
这是你的控制器 -
var app = angular.module('DemoApp', [])
app.controller('yourController', function($scope) {
$scope.yourMethod = function(param) {
alert(param.toString());
}
});
答案 3 :(得分:0)
可以使用Yauza说或者你也可以使用,,,,
loadAllFunction()
function loadAllFunction(){
//Your code
}