JSONファイルをJavaScriptで読み込みtableとしてHTMLに出力
・XMLHttpRequestでJSONファイル読み込み
・createElementでtable要素を生成
・appendChildでtable要素を出力
・JSONファイルは表形式で保存しておく
・テストはサーバを起動しlocalhost環境で行う
HTML専用のDOM(テーブルを作る)
http://titi-fe.hatenablog.com/entry/2016/02/15/152723JavaScriptでのJSONのパーシング - JSONの読み込みと値の取得
https://www.ipentec.com/document/document.aspx?page=javascript-json-parsing
<div id="id001"></div>
<script type="text/javascript" src="index.js"></script>
[
{"aaa":"xxx1", "bbb":1, "ccc":100},
{"aaa":"xxx2", "bbb":2, "ccc":200},
{"aaa":"xxx3", "bbb":3, "ccc":300},
{"aaa":"xxx4", "bbb":4, "ccc":400},
{"aaa":"xxx5", "bbb":5, "ccc":500}
]
window.addEventListener("load", init);
function init()
{
var request = new XMLHttpRequest();
request.onreadystatechange = function ()
{
if((request.readyState == 4) && (request.status == 200))
{
var table = document.createElement('TABLE');
var tbody = document.createElement('TBODY');
table.appendChild(tbody);
let dnRec = JSON.parse(request.responseText);
for(let i=0; i<dnRec.length; i++)
{
let rec = dnRec[i];
if(i == 0)
{
let tr = document.createElement('TR');
for(let key in rec)
{
let th = document.createElement('TH');
th.appendChild(document.createTextNode(key));
tr.appendChild(th);
}
tbody.appendChild(tr);
}
let tr = document.createElement('TR');
for(let key in rec)
{
let td = document.createElement('TD');
td.appendChild(document.createTextNode(rec[key]));
tr.appendChild(td);
}
tbody.appendChild(tr);
}
document.getElementById("id001").appendChild(table);
}
}
request.open("GET", "data.json");
request.send();
}