韩剧1988免费观看全集_久久影视三级福利片_亚洲视频在线观看免费_在线观看欧美日韩_国产亚洲激情在线_亚洲精品美女久久久_欧美国产日韩一区二区在线观看_91在线观看免费高清完整版在线观看_日韩av免费看_国产又爽又黄的激情精品视频_琪琪亚洲精品午夜在线_欧美性猛xxx_不卡毛片在线看_国产亚洲日本欧美韩国_91国内在线视频_精品国产福利视频

當(dāng)前位置:蘿卜系統(tǒng)下載站 > 技術(shù)開發(fā)教程 > 詳細(xì)頁面

JS完成表格行的添加、刪除、移動(dòng)、選擇設(shè)置常用辦法

JS完成表格行的添加、刪除、移動(dòng)、選擇設(shè)置常用辦法

更新時(shí)間:2023-06-13 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

編程(Programming)是編定程序的中文簡(jiǎn)稱,就是讓計(jì)算機(jī)代碼解決某個(gè)問題,對(duì)某個(gè)計(jì)算體系規(guī)定一定的運(yùn)算方式,使計(jì)算體系按照該計(jì)算方式運(yùn)行,并最終得到相應(yīng)結(jié)果的過程。為了使計(jì)算機(jī)能夠理解(understand)人的意圖,人類就必須將需解決的問題的思路、方法和手段通過計(jì)算機(jī)能夠理解的形式告訴計(jì)算機(jī),使得計(jì)算機(jī)能夠根據(jù)人的指令一步一步去工作,完成某種特定的任務(wù)。這種人和計(jì)算體系之間交流的過程就是編程。

【實(shí)例名稱】

JS實(shí)現(xiàn)表格行的添加、刪除、移動(dòng)、選擇操作常用方法

【實(shí)例描述】

很多開發(fā)工具提供了高性能的表格控件,可以實(shí)現(xiàn)行的添加、刪除、移動(dòng)、選擇等。本鍘將使用JavaScript實(shí)現(xiàn)HTML table的這些功能。

【實(shí)例代碼】

<!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>     <title>無標(biāo)題頁-本站(www.xue51.com)</title> <script type="text/javascript"> var mytable=null; window.onload=function(){ mytable=new CTable("tbl",10);      //隨機(jī)創(chuàng)建10行表格 } Array.prototype.each=function(f){  //數(shù)組的遍歷 for(var i=0;i<this.length;i++) f(this[i],i,this)} function $A(arrayLike){            //數(shù)值的填充 for(var i=0,ret=[];i<arrayLike.length;i++) ret.push(arrayLike[i]); return ret } Function.prototype.bind = function() {  //數(shù)據(jù)的綁定   var __method = this, args = $A(arguments), object = args.shift();   return function() {     return __method.apply(object, args.concat($A(arguments)));   } } function CTable(id,rows){ this.tbl=typeof(id)=="string"?document.getElementById(id):id; if (rows && /^\d+$/.test(rows)) this.addrows(rows)    //為表格添加行數(shù) } CTable.prototype={ addrows:function(n){          //隨機(jī)添加n行 new Array(n).each(this.add.bind(this)) }, add:function(){              //添加1行 var self=this; var tr = self.tbl.insertRow(-1),td1= tr.insertCell(-1), td2= tr.insertCell(-1),td3= tr.insertCell(-1); var chkbox=document.createElement("INPUT") chkbox.type="checkbox" chkbox.onclick=self.highlight.bind(self) td1.appendChild(chkbox)                    //第一列添加復(fù)選框 td1.setAttribute("width","35") td2.innerHTML=Math.ceil(Math.random()*99)  //第二列的隨機(jī)填充值 td3.innerHTML=Math.ceil(Math.random()*99)  //第三列的隨機(jī)填充值 }, del:function(){              //刪除所選行 var self=this $A(self.tbl.rows).each(function(tr){if (self.getChkBox(tr).checked) tr.parentNode.removeChild(tr)}) }, up:function(){              //上移所選行     var self=this     var upOne=function(tr){    //上移1行     if (tr.rowIndex>0){     self.swapTr(tr,self.tbl.rows[tr.rowIndex-1])     self.getChkBox(tr).checked=true}}     var arr=$A(self.tbl.rows).reverse() //反選     if (arr.length>0 && self.getChkBox(arr[arr.length-1]).checked){     for(var i=arr.length-1;i>=0;i--){     if (self.getChkBox(arr[i]).checked){     arr.pop()               }else{     break}}}     arr.reverse().each(function(tr){if (self.getChkBox(tr).checked) upOne(tr)}); }, down:function(){          //下移所選行     var self=this     var downOne=function(tr){          if (tr.rowIndex<self.tbl.rows.length-1)  {     self.swapTr(tr,self.tbl.rows[tr.rowIndex+1]);     self.getChkBox(tr).checked=true;     }}     var arr=$A(self.tbl.rows)     if (arr.length>0 && self.getChkBox(arr[arr.length-1]).checked){     for(var i=arr.length-1;i>=0;i--){     if (self.getChkBox(arr[i]).checked){     arr.pop()     }else{     break}}     }     arr.reverse().each(function(tr){if (self.getChkBox(tr).checked) downOne(tr)}); }, sort:function(){                //排序  var self=this,order=arguments[0]; var sortBy=function(a,b){ if (typeof(order)=="number"){  //數(shù)字,則按數(shù)字指示的列排序 return Number(a.cells[order].innerHTML)>=Number(b.cells[order].innerHTML)?1:-1; //轉(zhuǎn)化為數(shù)字類型比較大小 }else if (typeof(order)=="function"){   //返回結(jié)果排序 return order(a,b); }else{ return 1; } } $A(self.tbl.rows).sort(sortBy).each(function(x){ var checkStatus=self.getChkBox(x).checked; self.tbl.firstChild.appendChild(x); if (checkStatus) self.getChkBox(x).checked=checkStatus; }); }, rnd:function(){           //隨即選擇幾行數(shù)據(jù) var self=this,selmax=0,tbl=self.tbl; if (tbl.rows.length){  selmax=Math.max(Math.ceil(tbl.rows.length/4),1);  //選擇的行數(shù)不超過tr數(shù)的1/4  $A(tbl.rows).each(function(x){ self.getChkBox(x).checked=false; self.restoreBgColor(x) }) }else{ return alert("無數(shù)據(jù)可以選") } new Array(selmax).each(function(){ var tr=tbl.rows[Math.floor(Math.random()*tbl.rows.length)] self.getChkBox(tr).checked=true; self.highlight({target:self.getChkBox(tr)}) }) }, highlight:function(){               //設(shè)置行的背景色 var self=this; var evt=arguments[0] || window.event var chkbox=evt.srcElement || evt.target var tr=chkbox.parentNode.parentNode chkbox.checked?self.setBgColor(tr):self.restoreBgColor(tr) }, swapTr:function(tr1,tr2){             //交換tr1和tr2的位置 var target=(tr1.rowIndex<tr2.rowIndex)?tr2.nextSibling:tr2; var tBody=tr1.parentNode tBody.replaceChild(tr2,tr1);     tBody.insertBefore(tr1,target); }, getChkBox:function(tr){           //從tr得到 checkbox對(duì)象 return tr.cells[0].firstChild }, restoreBgColor:function(tr){          tr.style.backgroundColor="#ffffff" }, setBgColor:function(tr){         //設(shè)置背景色 tr.style.backgroundColor="#c0c0c0" } }

function f(a,b){ var sumRow=function(row) {return Number(row.cells[1].innerHTML)+Number(row.cells[2].innerHTML)}; return sumRow(a)>sumRow(b)?1:-1; } </script> </head> <body> <button  onClick="javascript:mytable.rnd()">隨機(jī)選擇行</button> <button  onClick="javascript:mytable.add()">添加一行</button> <button  onClick="javascript:mytable.del()">刪除選定行</button> <button  onClick="javascript:mytable.up()">上移選定行</button> <button  onClick="javascript:mytable.down()">下移選定行</button> <button  onClick="javascript:mytable.sort(1)">按第一列排序</button> <button  onClick="javascript:mytable.sort(f)">按數(shù)據(jù)和排序</button> <br/><br/> <table width=100%> <tr> <td valign="top"><table border id="tbl" width="80%"></table></td> </tr> </table> </body> </html>

 

【運(yùn)行效果】

 表格操作常用方法運(yùn)行效果

【難點(diǎn)剖析】

本例的重點(diǎn)是如何使用JaVascript創(chuàng)建表格類,并在類中設(shè)計(jì)表格的常用方法。在本例中手動(dòng)創(chuàng)建了“add”、“del”等表格操作方法,讀者可通過代碼注釋了解具體的代碼實(shí)現(xiàn)。

【源碼下載】

為了JS代碼的準(zhǔn)確性,請(qǐng)點(diǎn)擊:JS實(shí)現(xiàn)表格行的添加、刪除、移動(dòng)、選擇操作常用方法 進(jìn)行本實(shí)例源碼下載 


使用編程語言寫的程序,由于每條指令都對(duì)應(yīng)計(jì)算機(jī)一個(gè)特定的基本動(dòng)作,所以程序占用內(nèi)存少、執(zhí)行效率高。

溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!

本類教程下載

系統(tǒng)下載排行

網(wǎng)站地圖xml | 網(wǎng)站地圖html
中文在线а√天堂| 欧美性videos高清精品| 四虎精品一区二区免费| 伊人激情综合网| 精品国产依人香蕉在线精品| 日本成人一区二区三区| 欧美视频一区二区三区| 国产乱子伦三级在线播放| 国产伦视频一区二区三区| www黄色在线| 在线免费黄网| 成人免费视频网站| 欧美激情欧美狂野欧美精品| 青草在线视频在线观看| 亚洲成av人片| 神马午夜精品91| 伊人亚洲综合网| 成人免费福利在线| 在线观看免费91| 91精品国产免费| 免费观看一级视频| 青娱乐在线视频免费观看| 国产一二三区在线观看| 嫩草嫩草嫩草嫩草嫩草| 免费观看黄网站| 欧美日韩综合| 国产麻豆剧传媒精品国产| 久久久另类综合| 黄色香蕉视频在线观看| 欧美激情视频在线免费观看 欧美视频免费一| 99热99热| 香蕉视频在线视频| 熟女少妇a性色生活片毛片| 欧美日韩在线三级| 久久品道一品道久久精品| 中文在线资源天堂| 蜜臀在线观看| 亚洲午夜影视影院在线观看| 亚洲精品影院| 欧美va在线播放| 黄色国产网站| 欧美视频一区二区| 成人小说亚洲一区二区三区| 国产精品国产自产拍在线| 久久久精品人妻一区二区三区四| 国产成人av网站| 久久99高清| 美女一区二区三区视频| 欧美精品videos另类日本| 国产精品偷伦视频免费观看国产| 中文在线天堂库| 午夜激情福利电影| 欧美性受xxxx黑人猛交88| 久久在线免费观看| 九色成人在线| 欧美一区二区三区艳史| 中文字幕一区二区三区中文字幕| 性高潮久久久久久久久久| 在线不卡免费欧美| 日韩中文有码在线视频| 亚洲国产天堂久久国产91| 国产精品美腿一区在线看| 日韩中文字幕免费视频| 日韩欧美在线综合| 国产精品入口免费| 自拍亚洲图区| 亚洲人成在线网站| 色悠久久久久综合网小说| 五月天久久比比资源色| 国产精品久久电影观看| 国产精品99一区二区三| 丝袜美腿一区二区三区动态图| 亚洲福利影片在线| 男人午夜视频| 久久爱另类一区二区小说| 国产欧美久久久久久久久| 久久精品三级视频| 91精品国产综合久久香蕉的用户体验| 国产黄色免费网| 欧美精品激情视频| 亚洲综合免费观看高清完整版| 18国产精品| 久久99精品国产.久久久久久| 深爱五月综合网| 8v天堂国产在线一区二区| 色大师av一区二区三区| 亚洲女成人图区| 日本在线免费观看一区| 亚洲a∨一区二区三区| 亚洲日本在线播放| 高潮毛片7777777毛片| 熟女人妻在线视频| 国产成人精品午夜视频免费| 国产精品综合色区在线观看| 久久婷婷国产综合尤物精品| 99国产精品久久一区二区三区| 91亚洲精品久久久蜜桃借种| 国产精品23p| 久久免费精品国产| 国产经典欧美精品| 国产高清一区| 满满都是荷尔蒙韩剧在线观看| 精品无码一区二区三区的天堂| 国产激情精品久久久第一区二区| 伦理一区二区| 91久久伊人青青碰碰婷婷| 国产精品嫩草影院一区二区| 欧美午夜电影在线播放| 久久国产一区| 另类调教123区| 黄页在线免费观看| www.日韩av.com| 国产传媒欧美日韩| sm在线观看| 大桥未久一区二区| 成人免费淫片免费观看| 精品乱码一区二区三四区视频| 久久精品视频免费观看| 欧美日韩中文字幕综合视频| 超碰在线免费av| 大陆精大陆国产国语精品| 国产精品人成在线观看免费| 性xxxxfjsxxxxx欧美| 老湿机69福利| 九九热在线播放| 国产视频一二三四区| 日韩h在线观看| 综合成人在线| 重囗味另类老妇506070| 一区二区欧美激情| 在线精品国产| 欧美日韩精品一区二区三区视频播放| 1024av视频| 九九热精品视频国产| 五月婷婷六月丁香综合| av黄色网址| 亚洲欧美中文字幕在线观看| 中文字幕免费在线看线人动作大片| 在线观看av网页| 日韩有码视频在线| 看欧美ab黄色大片视频免费| 日本美女高潮视频| 亚洲日本免费电影| 欧美日韩卡一卡二| a级一a一级在线观看| 麻豆亚洲av熟女国产一区二| 91丨九色porny丨蝌蚪| 日韩精品一区中文字幕| 精品人伦一区二区三区蜜桃网站| 亚洲一区二区三区| 中文字幕亚洲日本岛国片| 草逼视频免费看| 免费黄网站欧美| 国产欧美日韩不卡免费| 亚洲不卡一区二区三区| 91中文字精品一区二区| 91精品国产综合久久精品性色| 久久99国产精品久久99大师| 国产精品色婷婷| 精品久久久久久综合日本欧美| 成人精品一区二区三区四区| 国内精品一区二区三区四区| 成人福利视频在线看| 国产精品福利在线观看播放| 91精品国产综合久久精品图片| 欧美日韩在线一区二区| 国产又粗又猛又色又| 欧美r级电影在线观看| 四虎精品成人免费观看| 国产一区二区三区不卡在线| 日韩a∨精品日韩在线观看| 水野朝阳av一区二区三区| 日韩在线免费视频| 青青青草网站免费视频在线观看| 在线观看免费视频一区二区三区| 欧美热在线视频精品999| 日韩免费高清视频网站| 亚洲男人电影天堂| 大黑人xxx| 折磨小男生性器羞耻的故事| 丁香桃色午夜亚洲一区二区三区| 日韩欧美另类一区二区| 免费看美女毛片| 亚洲最新中文字幕| 久久aⅴ国产紧身牛仔裤| 九热爱视频精品视频| 欧美日韩亚洲三区| 欧美日韩中文字幕在线播放| 粉嫩一区二区三区在线看| 一个人看的www在线免费观看| 亚洲高清av在线| 国产一区二区三区久久| 欧美日韩国产一级| 国产999精品久久久久久| 国产欧美一区二区三区精品酒店| 欧美日韩中文字幕视频| 成人小视频免费在线观看| 91国模少妇一区二区三区| 美女视频黄频大全不卡视频在线播放| 一区二区三区鲁丝不卡| 亚洲欧洲专区| 欧美一级电影在线| 在线视频自拍| 日本不卡一区二区三区视频| 国产91精品高潮白浆喷水| 51精品秘密在线观看| 蜜桃成人av| 亚洲伊人成综合成人网| 四虎4545www国产精品| 亚洲黄色在线看| 久cao在线| 日本精品一区二区三区四区| 亚洲天堂电影网| 国产永久免费高清在线观看| 99精品人妻少妇一区二区| 欧美18av| 肉色超薄丝袜脚交69xx图片| 成人综合网址| 欧美主播福利视频| 国产69精品久久久| 久久成人综合网| 五月综合激情| 日韩女优制服丝袜电影| 亚洲黄色高清| 手机在线观看免费av| 国产精品地址| 香蕉视频免费在线看| 欧美亚洲国产bt| 国产精品中文久久久久久久| 欧美与黑人午夜性猛交久久久| 国产精品一区二区在线播放| 精品一区av| 精品综合久久久久久97| 人人干视频在线| 国产精品无码久久久久一区二区| 激情图片中文字幕| 五月天婷亚洲天综合网精品偷| 蜜桃免费在线| 亚洲成**性毛茸茸| 亚洲国产精品va在看黑人| 国产精品区一区二区三含羞草| 中文字幕国产精品久久| 精品在线播放| 国产又色又爽又黄又免费| 熟妇人妻av无码一区二区三区| 午夜黄色福利视频| 鲁丝一区二区三区免费| 伊人久久大香线蕉综合75| 高清在线观看日韩| 一级欧洲+日本+国产| 欧美日韩中文在线观看| 亚洲日本中文字幕区| 在线观看av中文字幕| 奇米精品一区二区三区四区| 熟女人妻在线视频| 亚洲性夜色噜噜噜7777| 日韩欧美国产精品| 男人的天堂www| 在线播放免费| 加勒比在线一区二区三区观看| 99国产精品久久久久久久久久久| av影音资源网| 日本一二三区不卡| 国产丝袜一区二区三区免费视频| 国产成人在线一区二区| 26uuu欧美日本| 精品成人av一区| 日韩精品不卡一区二区| 国产在线播放你懂的| 人人爽人人爽av| yellow91字幕网在线| 特大巨黑人吊性xxxxn38| 欧美成人精品| 成人午夜激情免费视频| 欧美激情一区二区三区在线视频| 中文字幕免费在线播放| 欧美肉体xxxx裸体137大胆| 最新日韩一区| zzzwww在线看片免费| 亚洲人成免费网站| 精品裸体bbb| www.成人.com| 国产又粗又长| 亚洲专区视频| 丝瓜app色版网站观看| 国产日韩欧美中文在线播放| 黑巨茎大战欧洲金发美女| 国产麻豆一区二区三区精品| 亚洲成人资源在线| 亚洲少妇中出一区| 大吊一区二区三区| 欧美性视频一区二区三区| 日本亚洲欧美| 欧美在线一二三区| 亚洲最大中文字幕| a一区二区三区亚洲| 偷拍盗摄高潮叫床对白清晰| 亚洲成人av在线电影| 美美哒免费高清在线观看视频一区二区| 欧美成人伊人久久综合网| 国产精品激情电影| 成人av网站免费观看| 国产精品自拍偷拍视频| 日韩精品在线播放视频| 在线一区二区三区做爰视频网站| 亚洲视频香蕉人妖| 国产精品成人3p一区二区三区| 超碰免费在线| 国产激情久久久久久熟女老人av| 国语一区二区三区| 小说区视频区图片区| 亚洲a成v人在线观看| 国产一区二区三区日韩欧美| 色偷偷av亚洲男人的天堂| 99re热视频| 欧美熟妇乱码在线一区| 黄色av片三级三级三级免费看| 成人信息集中地| 伊人手机在线视频| 一区二区日韩在线观看| 麻豆国产精品视频| 日韩黄色免费电影| 五月激激激综合网色播| 久久久久久久久久久久久久久久久久久久| 精品国产免费人成电影在线观看四季| 欧美一区二区三区网站| 日本高清在线观看视频| 国产偷亚洲偷欧美偷精品|