2016-05-11 10 views
1

$ onを使ってHTMLページの現在の値を取得する方法は? 私のコードは次のとおりです。

$scope.$on('slideEnded', function() { 
    var startClass, endClass, sPos,ePos; 
    startClass = $scope.componentDetails.stepArray[$scope.componentDetails.value]; 
    endClass = $scope.componentDetails.stepArray[$scope.componentDetails.maxVal]; 


    // console.log(startClass + endClass) 
    getBatchSliders(startClass, endClass) 

}); 


function getBatchSliders(startClass, endClass) { 
    endClass=parseInt(endClass); 
    var totalSlider; 

    if (startClass !== 'LKG' || startClass !== 'UKG') { 
     totalSlider = endClass; 
     //console.log("LKG not found") 
    } 
    if (startClass === 'LKG') { 
     totalSlider = endClass + 2 
     //console.log("LKG found") 
    } 
    $scope.totalSliders=totalSlider; 
    console.log($scope.totalSliders) 
} 

今、私は私のhtmlページに「totalSliders」の値を渡したいですか? この{{totalSliders}}を使用したときに現在の値が取得されませんでしたか?

+0

に?また、{{totalSliders}} 'がユーザーであるHTMLを見ることはできますか? –

+0

はい、コンソールIでは、値を取得しています。しかし、htmlでは以前の値が表示されます。 – ArunJaganathan

+2

これを$ scope.applyの中に入れます:$ scope。$ apply(function(){ $ scope.totalSliders = totalSlider; }); –

答えて

2

totalSlidersに値を割り当てるので、最初に設定した後にバインディングが失われます。

して状態を持続するビューモデルオブジェクトを使用します。

$scope.vm = {}; // <-------------- initialize the vm here 

$scope.$on('slideEnded', function() { 
    var startClass, endClass, sPos,ePos; 
    startClass = $scope.componentDetails.stepArray[$scope.componentDetails.value]; 
    endClass = $scope.componentDetails.stepArray[$scope.componentDetails.maxVal];  


    // console.log(startClass + endClass) 
    getBatchSliders(startClass, endClass) 
}); 


function getBatchSliders(startClass, endClass) { 
    endClass=parseInt(endClass); 
    var totalSlider; 

    if (startClass !== 'LKG' || startClass !== 'UKG') { 
     totalSlider = endClass; 
     //console.log("LKG not found") 
    } 
    if (startClass === 'LKG') { 
     totalSlider = endClass + 2 
     //console.log("LKG found") 
    } 
    $scope.vm.totalSliders = totalSlider; // <-------------- use the vm here 
    console.log($scope.vm.totalSliders) 
} 

次に `はconsole.log($ scope.totalSliders)は`あなたがそれを期待する値を表示してい{{vm.totalSliders}}に特異的に結合するだけではなく{{totalSliders}}

関連する問題