私は基本的に1つのcsvを介してロードするphpスクリプトを持っています:
echo json_encode(file(csvfile.csv、FILE_IGNORE_NEW_LINES));
出力は次のようになります。
["foo、bar、baz"、 "foo、foo、bar"、 "bla、bla、blubb"]
私の基本的なhtmlファイルでは、次のようにロードします。
$(document).ready(function(){
$.getJSON("curlcsvfetcher.php", function(data) {
$('#data').empty();
var columnseperator = "|";
var commentindicator = "#";
var textqualifier = '"'
filltable2(data,columnseperator,commentindicator,textqualifier); }
);
これは関数ではうまく機能しますが、 :では機能filltable()
しません。filltable2()
function filltable(data,columnseperator,commentindicator,textqualifier){
var table_obj = $('table');
$.each(data, function(index, item){
table_obj.append($('<tr id="'+item+'"><td>'+item+'</td></tr>'));
}).insertAfter('.table');
}
function filltable2(data,columnseperator,commentindicator,textqualifier){
var table_obj = $('table');
var trstart = '<tr>';
var trend = '</tr>';
$.each(data, function(index, item){
table_obj.append($('<tr id="'+item+'"><td>'+item+'</td></tr>'));
var columns = data.split(columnseperator);
var tddata = '';
for (var column in columns){
tddata = tddata +'<td>'+column+'</td>';
}
var rowdata = trstart + tddata + trend;
table_obj.append($(rowdata));
}).insertAfter('.table');
}
この関数filltable()
は、1列3行の出力を生成します。しかし今、私は(この場合は3)列の各行を分解したいと思います。
関数内のコードに問題があるはずですが、filltable2()
何が間違っているのかわかりません。
の出力はfilltable2()
、テーブルの1行だけです。
どうもありがとうございます!
PS:この問題は私の最後の質問に関連していますが、基本的な問題は無関係だと思うので、新しい質問を作成しました