2017-03-29 2 views
1
<input name="maxSalary" id="MaxSalary" type="number" min="0" class="form-control" ng-model="dp.maximumSalary" ng-change="minMaxSalaryComparision()" /> 

これは私のhtml入力です。整数値を追加すると、正しく機能します。私が0000を追加した場合、最初に0を入力しただけで火災が発生します。これは私のJavaスクリプトです。anglejs ng-change関数は、html入力では正しく動作しません。

$scope.minMaxSalaryComparision = function() { 
     alert($scope.dp.maximumSalary); 
    }; 

+0

厥をリリースしたときに、このイベントを発生するngKeyupを使用することができます。したがって、汚れたチェックでは、追加するゼロの数にかかわらず、値はまったく同じです。このシナリオを確認する場合は、keypressイベントを使用できます。 –

+0

実際には0とみなされ、00000は同じ値です。あなたがタイプを選択したので番号です。あなたが差別化したい場合は、タイプをテキストに変更する必要があります –

答えて

1

使用ng-keyupまたはNG-のKeyDownの代わりに、NG-変更

<input name="maxSalary" id="MaxSalary" type="number" min="0" class="form-control" ng-model="dp.maximumSalary" ng-keyup="minMaxSalaryComparision()" /> 

DEMO

angular.module("Demoapp",[]) 
 
.controller("Democtrl",function($scope){ 
 

 
$scope.minMaxSalaryComparision = function() { 
 
     alert($scope.dp.maximumSalary); 
 
    }; 
 
})
\t <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script> 
 
<div ng-app="Demoapp" ng-controller="Democtrl"> 
 
<input min="0" class="form-control" ng-model="dp.maximumSalary" ng-keyup="minMaxSalaryComparision()" /> 
 

 
</div>

+0

それは動作します..ありがとうSajeetharan –

1

NG変更火災あなたはNGモデルの値を変更。 00000 ngに等しいので、変更は行われません。

は、代替的に、キーが0と00と同じように解釈するので

angular.module("app",[]) 
 
.controller("ctrl",function($scope){ 
 

 
$scope.minMaxSalaryComparision = function() { 
 
     alert($scope.dp.maximumSalary); 
 
    }; 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app="app" ng-controller="ctrl"> 
 
<input name="maxSalary" id="MaxSalary" type="number" min="0" class="form-control" ng-model="dp.maximumSalary" ng-keyup="minMaxSalaryComparision()" /> 
 

 
</div>

関連する問題