2016-05-06 6 views
0

meine Funktion reagiert einige wie seltsam, es macht nicht viel Sinn. Im Grunde habe ich eine Direktive in einem Eingabefeld implementiert, ich habe ngChange benutzt, und basalalyl, was passiert, ist der Wert in diesem Eingabefeld wird leer, das Eingabefeld wird auf $ pristine gesetzt.Legen Sie Eingabefelder in Pristine und leere Werte

Der seltsame Teil ist mit leeren Eingabefeldern in Bezug auf, über i meinen Code verlassen:

function changeProfitable(){ 
      if(typeof vm.profitability == 'undefined'){ 
       vm.wantedProfitability = ""; 
       $scope.form.profitability.$setPristine=true; 
      } 

} 

Zum Beispiel in der anstatt, if-Anweisung „typeof ....“ und vm.profitability setzen = " 123 "funktioniert die Funktion gut, aber wenn ich" typeof vm.profitability == 'undefined' "verwende, um zu überprüfen, ob das Eingabefeld leer ist, führt die Funktion weiterhin die if-Anweisung aus, aber das Eingabefeld wird nicht auf $ pristine gesetzt.

Kann nicht herausfinden, was los ist.

Antwort

0

Es ist nicht möglich, den ursprünglichen Status im Formularsteuerelement festzulegen. Sie können Formular Urzustand gesetzt mit

$scope.form.$setPristine(); 

Und Sie können überprüfen, ob etwas mit angular.isUndefined() Funktion nicht definiert ist.

+0

Bereits versucht es und immer noch nicht funktioniert, aus irgendeinem Grund funktioniert es, wenn ich einfügen und dann aus dem Controller löschen, aber wenn ich lösche mit Rücktaste funktioniert es nicht auf die gleiche Weise reagieren. – Pedro

Verwandte Themen