2014-02-21 36 views
1

這裏是場景,我有一個「獲取課程」按鈕,當我點擊按鈕時,我通過courseId,在getCourse()方法中返回$ scope.courseId;然後我通過$ http.post方法傳遞這個變量。但是當我在開發人員工具中調試時,我沒有獲取courseId值。

 

    $scope.getCourse= function(){ return $scope.courseId;} 

    $http.post('js/description.json', $scope.courseId).success(function(data){  
      $scope.response = data;   
    }) 

如果我通過如下所示的靜態課程ID,我得到的課程ID,所以請建議如何通過動態值。

 

    $http.post('js/description.json', {'courseId':'Adobe'}).success(function(data){  
      $scope.response = data;   
    }) 

+1

你爲什麼不使用 'JS/description.json',{courseId:$範圍.courseId} –

+0

這很好,你可以直接傳遞像$ scope.courseId或{courseId:$ scope.courseId}這沒關係,但我只有在動態變量時纔有問題。 – Abilash

+0

你能否進一步解釋一下,「動態」是什麼意思? – kubuntu

回答

1

假設$scope.getCourse= function(){ return $scope.courseId;}返回Course Id。你可以使用

$http.post('js/description.json', {courseId: $scope.getCourse()}).success(function(data){  
     $scope.response = data;   
}) 

不過,如果你是路過Course Id成確實職位的方法,你可以使用

$scope.getCourse = function(Id){ // Id is passed into function 
    $http.post('js/description.json', {courseId: Id}).success(function(data){  
     $scope.response = data;   
    }); 
} 
+0

對我來說還是沒有運氣。 – Abilash

+0

你會得到什麼錯誤? – kubuntu

+0

非常感謝你的方法很好,再次感謝。 – Abilash

1

看起來你只是傳遞字符串「Adobe」而不是服務期望的對象。嘗試:

$http.post('js/description.json', {courseId: $scope.courseId}).success(function(data){  
      $scope.response = data;   
    })