我在ng检查中调用了一个函数,以检查当前复选框的值是'test'的,如果已选中,则应检查复选框,否则复选框应未选中<</p>
为了实现这一目标,我通过了此。作为显示功能的参数,该函数在NG检查中被称为。但是,在控制台登录时,此this.value
是未定义的。即使我将事件对象传递到函数中作为参数,它也将返回未定义。
请检查以下代码:
var app = angular.module('app', []);
app.controller('mainController', function($scope, $http) {
$scope.show = function(val) {
console.log(val);
if (val == 'test') {
return true;
} else {
return false;
}
}
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div ng-app="app">
<div ng-controller="mainController">
<input type="checkbox" value="test" ng-checked="show(this.value)"/>
</div>
</div>
预先感谢:)
您可能需要使用NG模型而不是NG-Checked
var app = angular.module('app', []);
app.controller('mainController', function($scope, $http) {
$scope.test = false
$scope.show = function(val) {
$scope.test = val
}
/// after fetching data from your server,
/// you can set checked by calling:
$scope.show(true)
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div ng-app="app">
<div ng-controller="mainController">
<input type="checkbox" ng-model="test" />
</div>
</div>