Javascript 如何将动态数据从json文件部署到html表中?
下面的代码我已经尝试过了,但它不起作用。我想根据行id将数据动态部署到表中,所以将来如果有人对json文件进行更改,那么数据必须根据json数据显示到表的列中。例如,如果我从星期一到星期五在json文件中进行更改,那么数据必须显示在星期五列中,而不对javascript代码进行任何更改Javascript 如何将动态数据从json文件部署到html表中?,javascript,json,Javascript,Json,下面的代码我已经尝试过了,但它不起作用。我想根据行id将数据动态部署到表中,所以将来如果有人对json文件进行更改,那么数据必须根据json数据显示到表的列中。例如,如果我从星期一到星期五在json文件中进行更改,那么数据必须显示在星期五列中,而不对javascript代码进行任何更改 var makeSchedule= { “附表”:[ {“fitnessClass”:“一”, “会话类型”:“俯卧撑”, “期限”:1, “allocatedTime”:{ “集团”:“A”, “日”:“星期
var makeSchedule=
{
“附表”:[
{“fitnessClass”:“一”,
“会话类型”:“俯卧撑”,
“期限”:1,
“allocatedTime”:{
“集团”:“A”,
“日”:“星期一”,
“位置”:“大厅”,
“时间”:“11”
},
“交替时间”:
[
{“集团”:“B”,
“日”:“周二”,
“位置”:“主大厅2”,
“时间”:“11”}
]
},
{“fitnessClass”:“两个”,
“会话类型”:“正在运行”,
“期限”:1,
“allocatedTime”:{
“集团”:“A”,
“日”:“星期三”,
“位置”:“主厅3”,
“时间”:“9”
},
“交替时间”:
[
{“集团”:“B”,
“日”:“星期四”,
“位置”:“主厅4”,
“时间”:“9”}
]
},
{“fitnessClass”:“三”,
“sessionType”:“引体向上”,
“期限”:1,
“日”:“星期四”,
“位置”:“主厅3”,
“时间”:“15”
}
]
}
addEventListener(“加载”,函数(){
makeSchedule.schedule.forEach(已预订=>{
如果(booked.allocatedTime.day=='thurs')
{
document.getElementsByClassName('s9').innerHTML=`${booked.sessionType}`;
}
});
}); 代码>
星期一
此行:
if(booked.allocatedTime==='thurs')
看起来应该是:
if(booked.allocatedTime.day ==='thurs')
根据你拥有的物品
document.getElementsByClassName('s9').innerHTML=${booked.sessionType}
更新
@utkanos指出,document.getElementsByClassName('s9').innerHTML
返回节点列表,而不是HtmleElement,这是另一个问题。更完整的代码块如下所示:
var makeSchedule={
“附表”:[{
“fitnessClass”:“一”,
“会话类型”:“俯卧撑”,
“期限”:1,
“allocatedTime”:{
“集团”:“A”,
“日”:“星期一”,
“位置”:“大厅”,
“时间”:“11”
},
“交替时间”:[{
“集团”:“B”,
“日”:“周二”,
“位置”:“主大厅2”,
“时间”:“11”
}]
},
{
“fitnessClass”:“两个”,
“会话类型”:“正在运行”,
“期限”:1,
“allocatedTime”:{
“集团”:“A”,
“日”:“星期三”,
“位置”:“主厅3”,
“时间”:“9”
},
“交替时间”:[{
“集团”:“B”,
“日”:“星期四”,
“位置”:“主厅4”,
“时间”:“9”
}]
},
{
“fitnessClass”:“三”,
“sessionType”:“引体向上”,
“期限”:1,
“日”:“星期四”,
“位置”:“主厅3”,
“时间”:“15”
}
]
}
addEventListener(“加载”,函数(){
makeSchedule.schedule.forEach(预订=>{
如果(booked.allocatedTime&&booked.allocatedTime.day==='mon'){
document.queryselectoral('.s9').forEach(el=>{
el.innerHTML=`${booked.sessionType}`;
})
}
});
});代码>
星期一
您需要在父元素中搜索类
var x = document.getElementById("thurs");
x.getElementsByClassName("s9")[0].innerHTML = `${booked.sessionType}`;
以本机方式进行此操作将非常乏味。我建议您使用一些模板渲染@miozzz是有办法的,因为我不应该使用任何tenplating引擎。我想你可以尝试使用Jquery数据表或类似的东西。如果您真的必须以本机方式执行,则必须使用循环、模板文本等来执行。要添加到这一点,document.getElementsByClassName('s9')。innerHTML将不执行任何操作,因为getElementsByClassName
返回节点集合。