日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

JS如何操作DOM基于表格動態展示數據

瀏覽:176日期:2024-04-16 11:28:36

公司做一個實時監控有一個地方需要把后臺推送的數據動態的使用表格進行展示

我知道有一些插件可以做,但問題是我找的那個插件發現動態更新數據時IE內存一直累積,最后會造成崩潰現象

使用別人的插件說起來是效果好一些,功能多一些,但是需要的JS和復雜的邏輯,一旦出問題你很難去處理它

我也趕不上再去研究它,我直接手工寫一個算了,雖然沒有多好的效果,沒有額外的功能,但是實現動態表格數據刷新,還是能充分滿足要求的!

先把代碼全部貼出來,只要把這個代碼寫到HTML中,就能看到效果:

<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'><html xmlns='http://www.w3.org/1999/xhtml'><head><meta http-equiv='Content-Type' content='text/html; charset=gb2312' /><title></title><style type='text/css'>.table0 {font-family: '宋體';font-size: 14px;width: 400px;border-top-width: 1px;border-top-style: solid;border-top-color: #c4cdd4;border-bottom-width: 1px;border-bottom-style: solid;border-bottom-color: #c4cdd4;border-right-width: 1px;border-right-style: solid;border-right-color: #c4cdd4;border-left-width: 1px;border-left-style: solid;border-left-color: #c4cdd4;}.table0 tr {height : 25px;padding-left:5px;text-align: left;}.table0 th {color: #4c7c9b;font-weight: normal;background-color: #f1f1f1;height: 25px;border-right-width: 1px;border-right-style: solid;border-right-color: #c4cdd4;}.table0 td {border-right-width: 1px;border-right-style: solid;border-right-color: #c4cdd4;border-bottom-width: 1px;border-bottom-style: solid;border-bottom-color: #c4cdd4;}</style><script language='javascript' type='text/javascript'>var istt = false;var values = '';function callback(){if(istt){values = '[{’a’:1,’b’:’1’,’c’:’1’,’d’:’1’},{’a’:2,’b’:’2’,’c’:’2’,’d’:’2’},{’a’:3,’b’:’3’,’c’:’3’,’d’:’3’},{’a’:4,’b’:’4’,’c’:’4’,’d’:’4’}]';istt=false;}else{values = '[{’a’:10,’b’:’10’,’c’:’10’,’d’:’10’},{’a’:20,’b’:’20’,’c’:’20’,’d’:’20’},{’a’:30,’b’:’30’,’c’:’30’,’d’:’30’},{’a’:40,’b’:’40’,’c’:’40’,’d’:’40’}]';istt=true;}if(null!=values&&’’!=values){fnDeleteXLRow(); // 清除除標題外所有行var objs=eval(values); // 解析JSONfor(var i=0;i<objs.length;i++){ // 循環對象var u = objs[i];var tab=document.getElementById('proc'); // 獲得表格var rows=tab.rows; // 表格ROW對象var row1=tab.insertRow(rows.length); // 插入一行rows是一個數組,代表沒一行,索引從0開始row1.insertCell(0).innerHTML='&nbsp;'+u.a; // insertCell插入列,從0開始row1.insertCell(1).innerHTML='&nbsp;'+u.b;row1.insertCell(2).innerHTML='&nbsp;'+u.c;row1.insertCell(3).innerHTML='&nbsp;'+u.d;}}// 更新時間的改變document.getElementById('endTime').value=curDateTime();// 垃圾回收CollectGarbage();// 產生回調setTimeout(callback, 1000); }// 刪除所有行,不刪除標題行 function fnDeleteXLRow(){var table = document.getElementById(’proc’);var rowCount = table.rows.length; // 獲得一共多少行,因為不刪除標題,所以索引從 1 開始for(var i=1;i<rowCount;i++){table.deleteRow(1); // 因為刪除一行以后下面的行會頂上來,所以一直刪除第一行即可}}// 獲得當前時間function curDateTime(){var d = new Date(); var year = d.getYear(); var month = d.getMonth()+1; var date = d.getDate(); var day = d.getDay(); var hours = d.getHours(); var minutes = d.getMinutes(); var seconds = d.getSeconds(); var ms = d.getMilliseconds(); var curDateTime= year;if(month>9) curDateTime = curDateTime +'-'+month;else curDateTime = curDateTime +'-0'+month;if(date>9) curDateTime = curDateTime +'-'+date;else curDateTime = curDateTime +'-0'+date;if(hours>9) curDateTime = curDateTime +' '+hours;else curDateTime = curDateTime +' 0'+hours;if(minutes>9) curDateTime = curDateTime +':'+minutes;else curDateTime = curDateTime +':0'+minutes;if(seconds>9) curDateTime = curDateTime +':'+seconds;else curDateTime = curDateTime +':0'+seconds;return curDateTime; }setTimeout(callback, 1000);</script></head><body><div align='left'><font size='2px'><b>最后更新時間:</b></font><input type='text' value='00-00-00 00:00:00' readonly='readonly'><br><table border='0' cellspacing='0' cellpadding='0' class='table0'><tr><th>&nbsp;<b>A</b></th><th>&nbsp;<b>B</b></th><th>&nbsp;<b>C</b></th><th>&nbsp;<b>D</b></th></tr></table></div></body></html>

效果:

JS如何操作DOM基于表格動態展示數據

數據會一次是個位數一次是十位數的變化。

下面來簡單說一下實現:

數據來源可以是推送的,可以是Ajax請求的,數據源就是Json字符串

解析Json,循環獲得對象數組,每循環一次增加一行,然后根據屬性在行中增加單元格和增加單元格的內容。如果你想,也可以設置行和單元格的樣式

當然每次增加前要先清除掉除標題以外的所有行,然后再增加

刪除單元格的方法:

// 刪除所有行,不刪除標題行function fnDeleteXLRow(){var table = document.getElementById(’proc’);var rowCount = table.rows.length; // 獲得一共多少行,因為不刪除標題,所以索引從 1 開始for(var i=1;i<rowCount;i++){table.deleteRow(1); // 因為刪除一行以后下面的行會頂上來,所以一直刪除第一行即可}}

獲得有多少行,從索引 1 開始循環一定的次數,每次刪除的都是 索引 1 ,因為刪除之后下面的會頂上來,這個看一下Excel就明白了

循環對象增加行和列的代碼:

for(var i=0;i<objs.length;i++){ // 循環對象var u = objs[i];var tab=document.getElementById('proc'); // 獲得表格var rows=tab.rows; // 表格ROW對象var row1=tab.insertRow(rows.length); // 插入一行rows是一個數組,代表沒一行,索引從0開始row1.insertCell(0).innerHTML='&nbsp;'+u.a; // insertCell插入列,從0開始row1.insertCell(1).innerHTML='&nbsp;'+u.b;row1.insertCell(2).innerHTML='&nbsp;'+u.c;row1.insertCell(3).innerHTML='&nbsp;'+u.d;}

你也可以這樣:

var row1cell0=row1.insertCell(0); // 指定列的樣式 row1cell0.className='m_td1';

來指定行或列的樣式,不過一般我們把表格設置一個樣式引用,然后在該樣式中處理就可以了

<table border='0' cellspacing='0' cellpadding='0' class='table0'>

樣式:

<style type='text/css'>.table0 {font-family: '宋體';font-size: 14px;width: 400px;border-top-width: 1px;border-top-style: solid;border-top-color: #c4cdd4;border-bottom-width: 1px;border-bottom-style: solid;border-bottom-color: #c4cdd4;border-right-width: 1px;border-right-style: solid;border-right-color: #c4cdd4;border-left-width: 1px;border-left-style: solid;border-left-color: #c4cdd4;}.table0 tr {height : 25px;padding-left:5px;text-align: left;}.table0 th {color: #4c7c9b;font-weight: normal;background-color: #f1f1f1;height: 25px;border-right-width: 1px;border-right-style: solid;border-right-color: #c4cdd4;}.table0 td {border-right-width: 1px;border-right-style: solid;border-right-color: #c4cdd4;border-bottom-width: 1px;border-bottom-style: solid;border-bottom-color: #c4cdd4;}</style>

這個樣式只針對該表格生效!

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: JavaScript
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
亚洲h色精品| 久久久精品日韩| 黄色精品网站| 久久久人人人| 99精品综合| 国产一区亚洲| 国户精品久久久久久久久久久不卡 | 亚洲a一区二区三区| av资源亚洲| 在线一区视频观看| 99精品视频在线| 亚洲调教视频在线观看| 欧美 日韩 国产精品免费观看| 亚洲手机在线| 国产精品色网| 亚洲人亚洲人色久| 青青草国产精品亚洲专区无| 日本成人中文字幕在线视频| 日韩国产欧美在线播放| 国产精品一页| 日韩1区在线| 亚洲v在线看| 欧美二区视频| 日韩中文字幕不卡| 日本久久一区| 麻豆一区二区在线| 电影天堂国产精品| 午夜国产精品视频免费体验区| 亚洲深夜影院| 日韩av不卡一区二区| 国产剧情在线观看一区| 日韩成人精品一区| 国产精品玖玖玖在线资源| 精品国产乱码久久久| 黄在线观看免费网站ktv| 久久久精品午夜少妇| 免费在线观看不卡| 国产三级精品三级在线观看国产| 麻豆精品国产91久久久久久| 秋霞国产精品| 亚洲精品影视| 都市激情国产精品| 亚洲综合国产| 国产精品igao视频网网址不卡日韩 | 日韩欧美三级| 久草免费在线视频| 久久国产精品久久w女人spa| 国产精品天堂蜜av在线播放| 激情亚洲影院在线观看| 蜜臀久久久久久久| 欧美精品福利| 日韩专区精品| 亚洲免费成人av在线| 久久国内精品自在自线400部| 超级白嫩亚洲国产第一| 免费在线观看成人| 国产在线不卡一区二区三区 | 亚洲精品极品少妇16p| 亚洲精品大片| 不卡一二三区| 亚洲一区二区日韩| 国产91在线播放精品| 亚洲欧美日本日韩| 国产精品资源| 亚洲激情精品| 国产精品最新| 午夜精品久久久久久久久久蜜桃| 亚洲精选成人| 视频福利一区| 日韩高清不卡在线| 久久要要av| 国产精品九九| 午夜一级久久| av日韩中文| 日本不卡高清| 亚洲不卡av不卡一区二区| 911精品国产| 黄色成人精品网站| 欧美激情福利| 午夜在线视频观看日韩17c| 久久精品国产久精国产爱| 天堂av在线一区| 国产精品久久久久久久久久妞妞| 日韩精品欧美| 国产精品视频一区二区三区四蜜臂| 99热精品久久| 国产精品久久国产愉拍| 午夜欧美视频| 97精品国产一区二区三区| 中文字幕乱码亚洲无线精品一区| 国产成人黄色| 日本成人在线不卡视频| 尹人成人综合网| 国产一区二区三区四区五区| 97久久精品| 亚洲欧美日韩国产综合精品二区| 国产96在线亚洲| 国产精品欧美一区二区三区不卡| 午夜在线播放视频欧美| 久久国产亚洲| 亚洲天堂av影院| 国产探花一区| 日韩高清一区在线| 亚洲视频二区| 亚洲一区日本| 五月精品视频| 国精品一区二区| 999精品在线| 成午夜精品一区二区三区软件| 91精品福利观看| 亚洲精品三级| 亚洲毛片视频| 亚洲人成亚洲精品| 香蕉久久国产| 欧美午夜不卡影院在线观看完整版免费| 狠狠久久伊人| 久久久久九九精品影院| 国产精品亚洲产品| 久久国际精品| 国产日韩一区| 国产午夜一区| 国产美女撒尿一区二区| 91嫩草精品| 日本成人精品| 日韩国产精品久久久久久亚洲| 蜜臀av性久久久久蜜臀aⅴ流畅| 国产精品普通话对白| 91久久国产| 日韩一区二区久久| 美女国产精品| 亚洲人成网77777色在线播放| 日本一区二区中文字幕| 日韩精品国产欧美| 国产精品三p一区二区| 久久99视频| 国内自拍视频一区二区三区| 成人亚洲精品| 日韩大片在线| 九九色在线视频| 亚洲国内欧美| 免播放器亚洲一区| 欧美精品国产一区| 国产一区二区三区四区大秀| 免费高潮视频95在线观看网站| 电影亚洲精品噜噜在线观看| 亚洲高清毛片| 蘑菇福利视频一区播放| 综合精品一区| 国产亚洲人成a在线v网站| 国产精品3区| 日韩欧美不卡| 亚洲资源av| 国产欧美日韩精品一区二区免费 | 97人人精品| 免费视频亚洲| 日韩在线观看一区二区| 日韩成人精品一区二区三区| 久久99久久人婷婷精品综合| 岛国av在线网站| 成人av动漫在线观看| 久色成人在线| 国产精品日韩精品在线播放| 在线一区av| 国产美女精品| 久久狠狠久久| 日韩电影免费网址| 亚洲免费网址| 久久99影视| 亚洲国内精品| 日本vs亚洲vs韩国一区三区二区| 国产精品天天看天天狠| 91精品亚洲| 日本vs亚洲vs韩国一区三区二区| 老牛国内精品亚洲成av人片| 激情黄产视频在线免费观看| 欧美日韩中文字幕一区二区三区 | 国产日韩一区二区三免费高清| 欧美少妇精品| 亚洲专区视频| 精品国产aⅴ| 99热精品在线| 国产精品亚洲片在线播放| 久久久久久黄| 日韩欧美三区| av高清一区| 日韩高清中文字幕一区| 美女网站视频一区| 日本伊人久久| 中文av在线全新| 亚洲麻豆一区| 日韩电影免费网址| 日韩在线成人| 亚洲精品国产嫩草在线观看| 亚洲精品伦理| 国产在线|日韩| 国产精品日本一区二区不卡视频 | 一本大道色婷婷在线| 亚洲精品福利| 日韩网站中文字幕| 欧美日韩一区自拍|