当ng模式条件从true变为false时,ng-change trigger事件

时间:2016-06-11 00:07:57

标签: angularjs

问题:

def unique(arr) return arr.keep_if { |x| arr.count(x) == 1 } end print unique([2, 5, 5, 4, 22, 8, 2, 8]) #=> [4, 22, 2] 在模式从true变为false时被触发。

示例:

模式有效值至少为10位,因此当数字从9变为10时,会触发事件,这是正确的。但如果删除1位数,则会再次触发事件。这应该不会发生,或者我可能会在这里遗漏一些东西。

我的代码类似于:

ng-change

有人有解决方案吗?

1 个答案:

答案 0 :(得分:0)

试试这个,问题是ng-change函数triger在值改变之前



var jimApp = angular.module("mainApp",  []);

jimApp.controller('mainCtrl', function($scope){
  $scope.Method1 = {};
  $scope.event1 = function(id){
    if(angular.isDefined(id)){
      alert(id);
    }
    
  };
});

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="mainApp" ng-controller="mainCtrl">
  <form>
    <input id="id1" class="ng-pristine ng-invalid ng-invalid-required 
  ng-valid-pattern" type="text" ng-focus=""  
  ng-pattern="/^[0-9]{10,19}$/" minlength="10" required 
  ng-change="event1(Method1.id1);" ng-model="Method1.id1"
  placeholder="1234123412341*" 
  ng-class="{'active': !method21.id1.$pristine}" name="id1">
  </form>
</div>
&#13;
&#13;
&#13;