2016-07-19 2 views
0

Papa ParseとjQueryを使用してCSVファイルの解析、フィルタリング、および印刷に成功しました。残念ながら、出力がWebページに印刷されているようなループを設定しているようです。このjavascriptは、csvファイルの解析時にループ内でデータを印刷し続けます。

コードは次のとおりですが、わかりましたが、これはおそらく明らかなことですが、しばらくの間これで作業していて、見ることができません。

function organize(data) { 
    var finalLpc = []; 

    data.forEach(function(branch) { 
     if (branch.BranchNo == 1515) { 
      finalLpc.push(branch); 
     } 

     var $tableBody = $('<tbody></tbody>'); 
     for (var i = 0; i < finalLpc.length; i++) { 
      var branch = finalLpc[i]; 
      var $row = $('<tr></tr>'); 
      $row.append($('<td></td>').text(branch.Area)); 
      $row.append($('<td></td>').text(branch.LPC)); 
      $tableBody.append($row); 
     } 

     $('thead').after($tableBody); 
    }); 
} 

function parseData(url, callBack) { 
    Papa.parse(url, { 
     download: true, 
     header: true, 
     dynamicTyping: true, 
     complete: function(results) { 
      callBack(results.data); 
     } 
    }); 
} 

parseData("lpc.csv", organize); 

ご協力いただければ幸いです。私は今どこにいるのかを知るためにここで例を使用しました。

+3

注意。それは 'data'のすべての項目に対して' finalLpc'配列全体を再印刷します。おそらく '$ tableBody'を' data.forEach'ループから移動したいと思うでしょう。 –

+0

こんにちはマイク、ありがとう、私はちょうどそれに気づいた、いくつかの欠落中括弧とコンマが行うことができます驚くべきことです、私はそれを見て、それは今修正されたので、私は他の人のために解決策を投稿します。 –

+0

問題ありません。私はこの質問を閉じることを提案するつもりです、誰も同じ問題をもう一度起こすことはまずありません。 –

答えて

0

私はこれを修正してくれました。私は正しい方向に向いているMike McCaughanのおかげで、後世の答えを共有しています。あなたは `finalLpc`のみ` BranchNoの== 1515`が、あなたがfinalLpc` `にプッシュしたか否かの` $ tableBody`を出力にデータをプッシュしている

 function organize(data) { 

     var finalLpc = []; 

     data.forEach(function(branch){ 
      if (branch.BranchNo == 1197) { 
       finalLpc.push(branch); 
      } 
      }); 

      var $tableBody = $('<tbody></tbody>'); 
      for (var i = 0; i < finalLpc.length; i++) { 
       var branch = finalLpc[i]; 
       var $row = $('<tr></tr>'); 
       $row.append($('<td></td>').text(branch.Area)); 
       $row.append($('<td></td>').text(branch.BranchName)); 
       $row.append($('<td></td>').text(branch.LPC)); 
       $tableBody.append($row); 
      } 

      $('thead').after($tableBody); 
    } 



    function parseData(url, callBack) { 
    Papa.parse (url, { 
     download: true, 
     header: true, 
     dynamicTyping: true, 
     complete: function(results) { 
     callBack(results.data); 
     } 
    }); 
} 

parseData("lpc.csv", organize); 
関連する問題