Example of Reading Scope in Custom DIrective
HTML
<script src="http://code.angularjs.org/1.2.0-rc.2/angular.js"></script>
<div ng-app="testapp">
<div ng-controller="testCtrlr">
<input type= "text" ng-modal="num" only-numbers>
</div>
</div>
JavaScript
var app = angular.module('testapp', []);
app.controller('testCtrlr',['$scope', function($scope){
//console.log("controller called");
}]);
app.directive("onlyNumbers", function(){
return {
require: '?ngModel',
restrict: 'A',
scope: {attributeVal: '=onlyNumbers'},
link: function (scope, element, attrs, ngModelCtrl) {
if (!ngModelCtrl) {
return;
}
debugger;
ngModelCtrl.$parsers.push(function (input) {
if (input == undefined) return ''
var inputNumber = input.toString().replace(/[^0-9]/g, '');
if (inputNumber != input) {
ctrl.$setViewValue(inputNumber);
ctrl.$render();
}
return inputNumber;
});
}
}
});