Javascript 指令中ngChange事件后的控制器功能
我发现了一些问题和示例,但它们都使用$scope,到目前为止,我的应用程序中没有使用$scope。当指令中的复选框被选中(ng change)时,我试图执行控制器函数 HTMLJavascript 指令中ngChange事件后的控制器功能,javascript,angularjs,Javascript,Angularjs,我发现了一些问题和示例,但它们都使用$scope,到目前为止,我的应用程序中没有使用$scope。当指令中的复选框被选中(ng change)时,我试图执行控制器函数 HTML <div ng-app="myApp" ng-controller="Controller as ctrl"> <dir-select doIt="ctrl.doIt()" object="ctrl.object"> </div> 控制器和指令 var app = a
<div ng-app="myApp" ng-controller="Controller as ctrl">
<dir-select doIt="ctrl.doIt()" object="ctrl.object">
</div>
控制器和指令
var app = angular.module('myApp', []);
app.controller("Controller",[ function() {
var ctrl = this;
ctrl.object = {
name: "test",
selected: false
};
ctrl.doIt = function() {
alert("Doing It!");
};
}]);
app.directive('dirSelect', function() {
return {
restrict: 'E',
template: '<input type="checkbox" ng-model="object.selected" ng-change="doIt()">select',
scope: {
object: '=',
doIt: '&'
}
}
});
var-app=angular.module('myApp',[]);
app.controller(“controller”,[function(){
var ctrl=this;
ctrl.object={
名称:“测试”,
所选:false
};
ctrl.doIt=函数(){
警惕(“做它!”);
};
}]);
应用程序指令('dirSelect',函数(){
返回{
限制:'E',
模板:“选择”,
范围:{
对象:“=”,
doIt:“&”
}
}
});
我缺少什么?请试试这个
<dir-select do-it="ctrl.doIt()" object="ctrl.object">
在指令中
template: '<input type="checkbox" ng-model="object" ng-change="doIt()">select',
模板:“选择”,
编辑您的HTML:
<div ng-app="myApp" ng-controller="Controller as ctrl">
<input type="checkbox" ng-change="ctrl.doIt()" ng-model="ctrl.object">
</div>
选中:角度规格化属性名称。在HTML代码中,应该使用破折号分隔格式,而不是驼峰大小写。只需将
doIt=“ctrl.doIt()”
更改为doIt=“ctrl.doIt()”
。请参阅下面的代码
<div ng-app="myApp" ng-controller="Controller as ctrl">
<dir-select do-it="ctrl.doIt()" object="ctrl.object">
</div>
该死,我不知道有人已经回答了。哦,好吧,我会投票支持@YeahBoy的答案。:-)