Javascript表刷新无jquery
我正在使用javascript而没有jquery实现。 目前,我正在填充一个表,并希望在添加新数据时刷新该表,而无需重新加载新页面。到目前为止,刷新工作正常,但它会不断创建新表。如何在不不断添加新表的情况下实现表本身的刷新 代码Javascript表刷新无jquery,javascript,html,html-table,Javascript,Html,Html Table,我正在使用javascript而没有jquery实现。 目前,我正在填充一个表,并希望在添加新数据时刷新该表,而无需重新加载新页面。到目前为止,刷新工作正常,但它会不断创建新表。如何在不不断添加新表的情况下实现表本身的刷新 代码 var schedule = [ { date: "Monday, 9:00am", team1: "Chasing", team1Score: "13", team2: "Amsterdam Money Gang", team2Score: "9"}, { date
var schedule = [
{ date: "Monday, 9:00am", team1: "Chasing", team1Score: "13", team2: "Amsterdam Money Gang", team2Score: "9"},
{ date: "Monday, 9:00am", team1: "Boomsquad", team1Score: "15", team2: "Beast Amsterdam", team2Score: "11"},
];
function run(){
var len = schedule.length;
var table = document.getElementById('table1');
for (var i=0; i < len; i++) {
var tr = document.createElement('tr');
var s = schedule[i];
var td = document.createElement('td');
td.innerHTML = s.date;
tr.appendChild(td);
td = document.createElement('td');
td.innerHTML = s.team1;
tr.appendChild(td);
td = document.createElement('td');
td.innerHTML = s.team1Score;
tr.appendChild(td);
td = document.createElement('td');
td.innerHTML = s.team2;
tr.appendChild(td);
td = document.createElement('td');
td.innerHTML = s.team2Score;
tr.appendChild(td);
table.appendChild(tr);
}}
setInterval(function(){
run() // this will run after every 5 seconds
}, 2000);
var计划=[
{日期:“星期一,上午9:00”,第1组:“追逐”,第1组:“13”,第2组:“阿姆斯特丹金钱帮”,第2组“9”},
{日期:“星期一,上午9:00”,第1组:“婴儿队”,第1组“15”,第2组“阿姆斯特丹野兽”,第2组“11”},
];
函数run(){
var len=进度表长度;
var table=document.getElementById('table1');
对于(变量i=0;i
如果您在开发模式下检查页面(按F12键),您可以看到没有添加新表
,实际上您要做的是首先获得表
,然后开始向其中添加新行,但表中也有旧行。这就是为什么您多次看到相同的行。要解决这个问题,首先你必须清理桌子
您也可以每次都获取表,但没有必要这样做,这样做可以简单地增加浏览器上的负载,因为每次JavaScript
都会遍历每个DOM
来查找您的ID
只是做了以下更改来克服这个问题
var table = document.getElementById('table1');
var schedule = [
{ date: "Monday, 9:00am", team1: "Chasing", team1Score: "13", team2: "Amsterdam Money Gang", team2Score: "9"},
{ date: "Monday, 9:00am", team1: "Boomsquad", team1Score: "15", team2: "Beast Amsterdam", team2Score: "11"},
];
function run(){
var len = schedule.length;
table.innerHTML="";
for (var i=0; i < len; i++) {
var tr = document.createElement('tr');
var s = schedule[i];
var td = document.createElement('td');
td.innerHTML = s.date;
tr.appendChild(td);
td = document.createElement('td');
td.innerHTML = s.team1;
tr.appendChild(td);
td = document.createElement('td');
td.innerHTML = s.team1Score;
tr.appendChild(td);
td = document.createElement('td');
td.innerHTML = s.team2;
tr.appendChild(td);
td = document.createElement('td');
td.innerHTML = s.team2Score;
tr.appendChild(td);
table.appendChild(tr);
}}
setInterval(function(){
run() // this will run after every 5 seconds
}, 2000);
var table=document.getElementById('table1');
var计划=[
{日期:“星期一,上午9:00”,第1组:“追逐”,第1组:“13”,第2组:“阿姆斯特丹金钱帮”,第2组“9”},
{日期:“星期一,上午9:00”,第1组:“婴儿队”,第1组“15”,第2组“阿姆斯特丹野兽”,第2组“11”},
];
函数run(){
var len=进度表长度;
表.innerHTML=“”;
对于(变量i=0;i
快乐编码…您想要从服务器获得新的数据/记录?如果您不想要新行,为什么要在函数中添加它们?现在我已经从服务器传递了json,var计划是我的JSONY示例。您还可以做一些变通,比如在添加新行之前先清除表,如table.innerHTML=“”代码>@HankyPanky我的错误我的意思是刷新时,它会在另一个表下创建一个新表,