Angular 1.5 component demo

by Fabio Biondi

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.6/angular.js"></script>
<form ng-app="demoApp" name="myForm" ng-init="data = {}">
<label>
					<input name="domandona1" check-ratio type="radio" ng-model="data.domanda10" value="SI" >SI

				</label>
				<br/>
				<label>
					<input name="domandona2" check-ratio  type="radio" ng-model="data.domanda10"value="NO" >NO

				</label>
        <hr>
        
{{myForm.$valid}}
</form>

JavaScript

angular.module('demoApp', [])


// Integer validator
.directive('checkRatio', function() {

  var regExp = /^\-?\d+$/;

  return {
    require: 'ngModel',
    link: function(scope, element, attrs, ctrl) {

      ctrl.$validators.checkRatio = function(modelValue, viewValue) {
        console.log (viewValue);
        return viewValue === 'SI';
      };
    }
  };
})


.directive('validateAnswer', function() {
    return {
      restrict: 'A',
      scope : true ,
      require: 'ngModel',

      link: function(scope, element, attr, ctrl) {
        function customValidator(ngModelValue) {

       if (ngModelValue === 'SI') {
           ctrl.$setValidity('notEqualNo', false);
       } else {
           ctrl.$setValidity('notEqualNo', true);
       }

       return ngModelValue;
   }
   ctrl.$parsers.push(customValidator);

      }
    };
});