2016-08-25 16 views
0

私はcsvファイルを読み込んでいます。これをanglejsスクリプトとして配列に変換しますが、角度jsの変数に渡す必要があります ここにはjavascript:javascript変数の値を角度js変数に送信

$.get("test.csv", function(data) { 

     var rows = data.split("\r\n"); 

       if(rows.length>0){ 
        var firstRowCells = GetCSVCells(rows[0], ","); 

        var dataArray = new Array(); 
        for(var i=1;i<rows.length;i++) 
        { 
         var cells = GetCSVCells(rows[i], ","); 
         var obj = {}; 
         for(var j=0;j<cells.length;j++) 
         { 
          obj[firstRowCells[j]] = cells[j]; 
         } 
         dataArray.push(obj); 
        } 


        $("#dvCSV").html(''); 
        alert("dataarray"+dataArray); 
        $("#dvCSV").append(JSON.stringify(dataArray)); 
        var myjson=JSON.stringify(dataArray); 
        //alert(myjson); 
       } 
hera atlast value of dataArray variable have to pass to angular js variable 

と私は角JS varaiable $ scope.test app.jsに保管する必要があります。

angular.module('sortApp', []) 
.controller('mainController', function($scope) { 
    $scope.test=$scope.dataf; 

答えて

1

は、なぜあなたはとにかくjQuery.get()を使用する必要がありますか?

angular.module('sortApp', []) 
.controller('mainController', function($scope, $http) { 
    $http.get("test.csv") 
    .then(function(data) { 
     var rows = data.split("\r\n"); 
     if(rows.length > 0){ 
      var firstRowCells = GetCSVCells(rows[0], ","); 

      var dataArray = new Array(); 
      for (var i=1; i < rows.length; i++) 
      { 
       var cells = GetCSVCells(rows[i], ","); 
       var obj = {}; 
       for(var j=0; j < cells.length; j++) 
       { 
        obj[firstRowCells[j]] = cells[j]; 
       } 
       dataArray.push(obj); 
      } 
      /* 
       You shouldn't use jQuery here anyway, 
       just bind a scope value to your html... 
       $("#dvCSV").html(''); 
       alert("dataarray"+dataArray); 
       $("#dvCSV").append(JSON.stringify(dataArray)); 
       var myjson=JSON.stringify(dataArray); 
      */ 
      $scope.test = dataArray; 
     } 
    }) 
}) 

をして、HTMLで:角度の$httpを使用

<div ng-app="sortApp" ng-controller="mainController"> 
    {{test}} 
</div> 
+0

それは簡単な –

+0

「は、それが動作していない」あなたを助けることで私を助けていませんお願いします。あなたが得ているエラーはありますか?何を試しましたか?私の場合、あなたの問題についての情報はほとんどありません。 – Fissio

+0

私はnewapp.jsとして保存します: –

0

をあなたは$ HTTPを使用するカント場合は、この使用して$をachiveことができるより)(適用、適用の基本的な使い方のためのスニペットを見てください。それが動作していない

function jsfun() 
 
{ 
 
    var data = "i am Ouside scope var "; 
 
    var elem = document.getElementById("mainDiv"); 
 
    var scope = angular.element(elem).scope(); 
 
    
 
    
 
    scope.$apply(function(){ 
 
    
 
    scope.data = data; 
 
    }) 
 
} 
 

 
var app = angular.module('myapp',[]); 
 

 
app.controller('demoCtrl',function($scope){ 
 

 
    $scope.data = ""; 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app='myapp'> 
 
    <div id="mainDiv" ng-controller="demoCtrl"> 
 
    
 
    value from js :: {{data}} 
 
    
 
    <br> 
 
    <button onclick="jsfun()">get data from js</button> 
 
    </div> 
 
</div>

関連する問題