2016-05-09 6 views
0

Ich habe einen Aufruf in AngularJS zu $ ​​http Get, die Daten zurückgibt. Ich habe ein boolesches Feld PassFail, das derzeit als "wahr" oder "falsch" erscheint. Ich möchte, dass "Pass" oder "Fail" angezeigt wird. Ich habe versucht, eine PassFail-Funktion in $ Scope und $ rootScope hinzuzufügen, aber nichts funktioniert für mich. Ich denke, es gibt eine einfache Lösung, aber es wird wahrscheinlich Tage dauern, bis ich das selbst herausfinden kann. Kannst du helfen?So fügen Sie dieses Format Funktion in AngularJS

var oApp = angular.module("myApp", []); 
 

 
    oApp.controller("certificationsCtrl", function ($scope, $http) 
 
    { 
 
     $scope.Exams = {}; 
 

 
     $scope.GetPassFail = function (passFail) 
 
     { 
 
      return passFail ? "Pass" : "Fail"; 
 
     }; 
 

 
     $scope.ShowExams = function (certificationID) 
 
     { 
 
      var url = "http://localhost:49861/api/Exams?id=" + certificationID + "&extra=0"; 
 

 
      $http({ 
 
       method: "GET", 
 
       url: url 
 
      }).then(function mySuccess(response) 
 
      { 
 
       $scope.Exams = response.data; 
 
      }, function myError(response) 
 
      { 
 
       alert("error response.statusText = " + response.statusText); 
 
      }); 
 
     } 
 
    }); 
 

 
<tr ng-repeat="x in Exams"> 
 
       <td style="border: 1px solid black;">{{ x.ExamNumber}}</td> 
 
       <td style="border: 1px solid black;">{{ x.ExamShortName }}</td> 
 
       <td style="border: 1px solid black;">{{ x.PassFail | GetPassFail }}</td> 
 
MM-dd" }}</td> 
 
      </tr>

Antwort

2

, warum diese in HTML nicht mit

{{ x.PassFail ? "Pass" : "Fail" }} 
+0

Beide Antworten arbeiten verarbeiten, und während Kethansri meine Frage direkt beantwortet mehr, ich glaube, Wir sind uns alle einig, dass dies eine bessere Lösung ist. Einfacher ist fast immer besser. Danke Simon. –

1

Versuchen <td style="border: 1px solid black;">{{GetPassFail(x.PassFail)}}</td>

Verwandte Themen