我正在处理按钮中包含的一些Angular标签。出于某种原因,选择功能在被按下时不会被调用。所以我认为这个问题必须在html中。我提供了两组代码来解决问题。
Html代码
<ul>
<li class="navigation-button" role="presentation" ng-class="{active:isSelected(1)}">
<button class="btn-lg btn-primary" ng-click="select(1)" aria-controls="home" role="tab">Home</button>
</li>
<li class="navigation-button" role="presentation" ng-class="{active:isSelected(2)}">
<button class="btn-lg btn-primary" ng-click="select(2)" aria-controls="savings options" role="tab">Savings Options</button>
</li>
<li class="navigation-button" role="presentation" ng-class="{active:isSelected(3)}">
<button class="btn-lg btn-primary" ng-click="select(3)" aria-controls="checking option" role="tab">Checking Options</button>
</li>
<li class="navigation-button" role="presentation" ng-class="{active:isSelected(4)}">
<button class="btn-lg btn-primary" ng-click="select(4)" aria-controls="credit cards" role="tab">Credit Cards</button>
</li>
<li class="navigation-button" role="presentation" ng-class="{active:isSelected(5)}">
<button class="btn-lg btn-primary" ng-click="select(5)" aria-controls="loans" role="tab">Loans</button>
</li>
<li class="navigation-button" role="presentation" ng-class="{active:isSelected(6)}">
<button class="btn-lg btn-primary" ng-click="select(6)" aria-controls="sign in" role="tab">Sign In</button>
</li>
</ul>
角度函数
$scope.select = function(setTab) {
$scope.tab = setTab;
if (setTab === 2) {
$scope.filtText = "Savings";
}
else if (setTab === 3) {
$scope.filtText = "Checking";
}
else if (setTab === 4) {
$scope.filtText = "Credit";
}
else if (setTab === 5) {
$scope.filtText = "Loan";
}
else if (setTab === 6) {
$scope.filtText = "Sign";
}
else {
$scope.filtText = "Bank";
}
};
答案 0 :(得分:2)
已经是男人了
var app = angular.module("mainApp", []);
app.controller('mainCtrl', function($scope){
$scope.select = function(setTab) {
alert("selected");
$scope.tab = setTab;
if (setTab === 2) {
$scope.filtText = "Savings";
}
else if (setTab === 3) {
$scope.filtText = "Checking";
}
else if (setTab === 4) {
$scope.filtText = "Credit";
}
else if (setTab === 5) {
$scope.filtText = "Loan";
}
else if (setTab === 6) {
$scope.filtText = "Sign";
}
else {
$scope.filtText = "Bank";
}
};
});
&#13;
.active{
color:red;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="mainApp" ng-controller="mainCtrl">
<ul>
<li class="navigation-button" role="presentation" ng-class="{'active':tab == 1}">
<button class="btn-lg btn-primary" ng-click="select(1)" aria-controls="home" role="tab">Home</button>
</li>
<li class="navigation-button" role="presentation" ng-class="{'active':tab == 2}">
<button class="btn-lg btn-primary" ng-click="select(2)" aria-controls="savings options" role="tab">Savings Options</button>
</li>
<li class="navigation-button" role="presentation" ng-class="{'active':tab == 3}">
<button class="btn-lg btn-primary" ng-click="select(3)" aria-controls="checking option" role="tab">Checking Options</button>
</li>
<li class="navigation-button" role="presentation" ng-class="{'active':tab == 4}">
<button class="btn-lg btn-primary" ng-click="select(4)" aria-controls="credit cards" role="tab">Credit Cards</button>
</li>
<li class="navigation-button" role="presentation" ng-class="{'active':tab == 5}">
<button class="btn-lg btn-primary" ng-click="select(5)" aria-controls="loans" role="tab">Loans</button>
</li>
<li class="navigation-button" role="presentation" ng-class="{'active':tab == 6}">
<button class="btn-lg btn-primary" ng-click="select(6)" aria-controls="sign in" role="tab">Sign In</button>
</li>
</ul>
</div>
&#13;