2016-04-25 11 views
0

このコードでは、値がの場合、入力フィールドに検証を追加したいのですが、なぜ私が更新して新しい値を入力できないのか分かりません入力フィールドに入力します。入力フィールドの値を変更することはできません。入力フィールドがng-keydownイベントで更新されない

既存の値を削除して既存の値に何かを追加すると、値は変わりません。ここで

はHTMLコードです:

<input ng-model="lineitemDetailsCtrlAs.lineItems.orderedQuantity" type="text" class="col-md-6 text-right panel-row-spacing" 
       ng-keydown="valueChanged($event)" required 
       /> 

と角度のコードは次のとおりです。

$scope.valueChanged = function (event) { 
var quantityRequire={}; 
    if (event.keyCode === 48 || lineitemDetailsCtrlAs.lineItems.orderedQuantity == 0) { 
      quantityRequire = { 
       "messageId": "ORDERED_QUANTITY", 
       "params": [], 
       "severity": "ERROR" 
      }; 
      lineitemDetailsCtrlAs.errorMessages.push(quantityRequire); 
      } 
      else{ 
      event.preventDefault(); 
      } 
    }; 
+0

実施例であるあなたは、コントローラのコードを表示することができますか? –

+0

私はすでに私のコントローラコードを示しています。 –

+0

プランナーを作成できますか?http://plnkr.co – dreamweiver

答えて

1

次の方法でイベントを停止している "event.preventDefault();"、唯一のキーコード48ので、 (数字0のみ)は受け入れ可能です。他のキーイベントはelse条件に落ちて入力値の更新を停止します。私はRameshkumar Arumugamは下記、あなたのコードが悪いのかについて正しいと思う

+0

コードの一部を削除しましたが、もう一度入力フィールドを更新できません –

0

angular.module("myApp", []) 
 
    .controller("MainCtrl", function($scope) { 
 
    $scope.lineItems = { 
 
     orderedQuantity: 12 
 
    }; 
 
    $scope.errorMessages = []; 
 
    $scope.valueChanged = function(event) { 
 
     var quantityRequire = {}; 
 
     if (event.keyCode === 48 || $scope.lineItems.orderedQuantity == 0) { 
 
     quantityRequire = { 
 
      "messageId": "ORDERED_QUANTITY", 
 
      "params": [], 
 
      "severity": "ERROR" 
 
     }; 
 
     alert(quantityRequire["messageId"]); 
 
     $scope.errorMessages.push(quantityRequire); 
 
     } 
 
    }; 
 
    })
<div ng-app="myApp"> 
 
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script> 
 
    <div ng-controller="MainCtrl"> 
 
    <input ng-model="lineitemDetailsCtrlAs.lineItems.orderedQuantity" type="text" class="col-md-6 text-right panel-row-spacing" ng-keydown="valueChanged($event)" required /> 
 
    </div> 
 
</div>

関連する問題