我已经在角度js中创建了一个名为test
的自定义属性。当我在ng-controller关键字i.d旁边写test
属性时。如何在角度js中获取自定义属性的值
<div ng-controller="myCon" test="abc"></div>
然后我可以通过使用alert($attrs.test)
从控制器访问test
。但是,如果我编写除ng-controller关键字旁边的自定义属性test
,我无法访问它。即
<div ng-controller="myCon"> <div test="def"></div> </div>
在这种情况下,我在alert($attrs.test)
的完整代码得到不确定 ...
<html>
<script src="angular.min.js"></script>
<body ng-app="myApp">
<div ng-controller="kumar" >
<button ng-click="check()" test="def">Click</button>
</div>
<script>
var app = angular.module("myApp", []);
app.directive("test", function() {
return {
//template : "<h1>Hello</h1>"
};
});
app.controller("kumar",function($scope,$attrs){
$scope.check=function(){
alert(JSON.stringify($attrs.test)); //getting undefined. I
//should get def.
}
});
</script>
</body>
</html>
该属性将只能访问到测试指令的控制器 – ayushgp
按钮在div哪里ng控制器写入。所以我认为按钮在该控制器下 –
按钮在该控制器中,但该指令的属性不是。为了让父母能够访问它,你需要让父母访问其子范围。阅读关于它[这里](https://github.com/angular/angular.js/wiki/Understanding-Scopes) – ayushgp