0
我有一個指令,工作複選框,也有ng模型。
在關於鏈接功能的指令中,複選框未獲取模型的值。
這是工作,如果添加超時(無論多久,即使爲0)。Angularjs指令複選框與ng模型
我的控制和指令:
var myApp = angular.module("myApp",[])
.directive("checkBox", function($timeout){
return {
restrict: 'A',
link: function (scope, element, attrs, ctrl) {
console.log("Check box is : " + element[0].checked);
scope.message += "Check box is : " + element[0].checked + " , ";
$timeout(function(){
scope.message += "Check box is : " + element[0].checked;
console.log("Check box is : " + element[0].checked);
},0);
}
}
});
function myCtrl($scope){
$scope.checkBoxModel = true;
$scope.message = "";
}
HTML:
<div ng-app="myApp" ng-controller="myCtrl" >
<input type="checkbox" ng-model="checkBoxModel" check-box>
<br/>
{{message}}
</div>
Fiddel - http://jsfiddle.net/myyjL/
在此先感謝。
嗨巴巴。 感謝您的回答。我知道使用指令之外的東西並不是很好的設計。我只是爲了在屏幕上顯示假/真的示例而添加了這個... 關於手錶 - 我不想每次模型改變時都做一些事情。只在指令加載時,我需要知道該複選框是否被選中。 – user3126871
還有其他可以使用的指令:ng-load和ng-init。你不應該使用$超時。 –
當然我不想使用$超時。那爲什麼我問這個問題。瞭解方式之後零這個複選框獲取值..如果我使用ng-load或ng-init我想念指令點..我不想爲每個複選框添加ng-init。 – user3126871