【发布时间】:2017-05-04 21:16:07
【问题描述】:
我想使用 Javascript 创建带有 JSON 的表。
1。我创建 json API url (http://sample.com/getAllItems)
它会像这样返回 json 数据;
[{"ID":1,"NAME":"Tester","DEPARTMENT":"Dev","TITLE":"sample title","CONTENTS":"sample content","TYPE":0,"IMPORTANCE":"0","CREATED_AT":"2017-04-26 14:55:39","UPDATED_AT":"2017-04-27 00:00:00"},{"ID":4,"NAME":"","DEPARTMENT":"","TITLE":"smaple title2","CONTENTS":"sample content2","TYPE":null,"CREATED_AT":"2017-05-01 11:44:44","UPDATED_AT":"0000-00-00 00:00:00"}]
2。我想用json数据制作表格所以..
var apiURL = '/getAllItems';
var data= [];
var option = [
{field:"ID",width:10},
{field:"TITLE", width:160},
{field:"CONTENTS", width:420}
];
$.getJSON(apiURL, function ( datas ) {
$.each( datas, function( key, val ){
data.push( val );
});
});
window.onload = function() {
var itemTable = $("#itemTable");
var makeTable = $("<table>").appendTo(itemTable);
makeTable.css({"border-collapse": "collapse", "border": "1px #CCC solid"});
$.each( data, function( index, row) {
var makeTr = $("<tr>").appendTo(makeTable);
console.log("index : "+index);
console.log("row : "+ row);
$.each( option, function( i, fieldInfo ) {
var makeTd = $("<td>").appendTo(makeTr);
console.log("Index : "+index);
console.log("Row : "+row);
console.log( "i : "+i);
console.log( "fieldInfo : "+fieldInfo);
console.log( "fieldInfo.field : "+fieldInfo.field);
console.log( "Row[Field] : "+row[fieldInfo.field]);
makeTd.html( row[fieldInfo.field]);
makeTd.css({"width": fieldInfo.width+"px", "border": "1px #CCC solid"});
});
});
}
</script>
和
返回
--------------------------------------
1 | sample title | sample content
--------------------------------------
2 | sample title2| sample content2
----------------------------------------
我想使用标题单元格,但我不能.. 我怎样才能得到这样的表格?
--------------------------------------
ID | Title | Content
--------------------------------------
1 | sample title | sample content
--------------------------------------
2 | sample title2| sample content2
----------------------------------------
【问题讨论】:
标签: javascript json html-table