<div ng-controller="TestingCtrl">
<input ng-class="{'fancy' :status}">
<input ng-class="{'fancy' :status2}">
<input type="button" value="change" ng-change="action()">
</div>
.fancy{
background:Yellow;
}
function TestingCtrl($scope) {
$scope.status = true
$scope.status2 = true
$scope.action = function() {
$scope.status = false
$scope.status2 = false
}
答案 0 :(得分:2)
在按钮上使用ng-click而不是ng-change,它已经完成..还在控制器之前创建了一个角度应用程序..
var app = angular.module('myApp', []);
function testController($scope) {
$scope.status = true;
$scope.status2 = true;
$scope.action = function() {
$scope.status = false
$scope.status2 = false
}
}
,html就像这样
<div ng-controller="testController">
<input ng-class="{'fancy' :status}">
<input ng-class="{'fancy' :status2}">
<input type="button" value="change" ng-click="action()">
</div>
答案 1 :(得分:2)
模型永远不会改变,因此永远不会调用ng-change。来自docs:
“仅当输入值的更改导致将新值提交给模型时,才会评估ngChange表达式”
永远不会评估动作功能,因为没有针对该特定输入更改的ng模型。
如果你点击它可以工作,那么你可以切换背景颜色。
$scope.action = function(){
$scope.status = !$scope.status
$scope.status2 = !$scope.status2
}