2017-02-20 106 views
-1

當我點擊按鈕「on」我的API運行xhr以「激活」我的數據。但是,當我點擊按鈕「關閉」我的API運行XHR「取消」我data.isactive我從數據API(0或1)獲得。因此,我用_用AngularJS點擊後切換按鈕

ng-show and ng-hide

我沒有表現出我的按鈕「關閉」或「上」,顯示如果我的isactive === 1isactive === 0

我用這個代碼HTML:

<button ng-show="data.active" type="button" class="btn btn-default" ng-click="FiturThread(data)"><i class="fa fa-toggle-off"></i> Off</button> 
<button ng-hide="data.active" type="button" class="btn btn-success" ng-click="FiturThread(data)"><i class="fa fa-toggle-on"></i> On</button> 

我的問題是我點擊按鈕「開」和警報運行「成功激活」,按鈕「上」應與按鈕替換爲「關」,所以代替。

你可以給我解決方案嗎?我不得不使用什麼?謝謝

+0

你的HTML看起來不錯,都必須有數據有問題,我建議檢查你的反應從瀏覽器中的xhr調用中獲得。 – George

+0

響應xhr是正確的和預期的,因爲我想 – userpr

+0

我認爲結果是數據的數組,你寫ng-repeat來執行每個數據的活動/不活動。在該重複內部,按鈕保持不變。我明白這一點。這樣對嗎 ? –

回答

1

這裏是工作示例

試試這個

<!DOCTYPE html> 
 
<html lang="en"> 
 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"> 
 
</script>     
 

 
<body> 
 
    <div ng-app="myApp" ng-controller="myCtrl"> 
 
     <button ng-show="data.active" ng-click="FiturThread(data)">First Button</button> 
 
     <button ng-hide="data.active" ng-click="FiturThread(data)">Second Button</button> 
 
    </div> 
 

 
    <script> 
 

 
     var app = angular.module('myApp', []); 
 
     app.controller('myCtrl', function($scope) { 
 

 
      $scope.data = {}; 
 
      $scope.data.active = true; 
 
      $scope.FiturThread = function(){ 
 
      $scope.data.active = !$scope.data.active; 
 
     } 
 

 
    }); 
 
</script> 
 
</body> 
 
</html>

+0

它不工作sir – userpr

+0

你有沒有得到任何錯誤? –

+0

是的,「TypeError:無法讀取未定義的屬性」活動「 – userpr