首页 > 代码库 > Dom操作高级应用
Dom操作高级应用
table
tBodies,tHead,tFoot,rows,cells
一个table有多个tbody
oTab.tBodies[0].rows[i].style.background = "#ccc";
示例:隔行换色
window.onload = function(){
var oTab = document.getElementById("tab1");
var oldColor; //关键点:保存行的旧样式
oTab.tBodies[0].rows[0].cells[1].innerHTML = "jack";
for(var i=0; i<oTab.tBodies[0].rows.length; i++){
if(i%2==0){
oTab.tBodies[0].rows[i].style.background = "#ccc";
}
else{
oTab.tBodies[0].rows[i].style.background = "";
}
oTab.tBodies[0].rows[i].onmouseover = function(){
oldColor = this.style.background; //保存行的旧样式
this.style.background = "green";
}
oTab.tBodies[0].rows[i].onmouseout = function(){
this.style.background = oldColor;
}
}
}
添加删除行
+++++++++++++++++++++++++++++++++++++++
window.onload = function(){ var oTab = document.getElementById("tab1"); var oName = document.getElementById("txtName"); var oAge = document.getElementById("txtAge"); var oBtn = document.getElementById("btn1"); var maxId = oTab.tBodies[0].rows.length + 1; //第一种 oBtn.onclick = function(){ var oTr = document.createElement("tr"); var oTd1 = document.createElement("td"); var oTd2 = document.createElement("td"); var oTd3 = document.createElement("td"); var oTd4 = document.createElement("td"); //var oA = document.createElement("a"); var length =oTab.tBodies[0].rows.length; //var maxId =oTab.tBodies[0].rows[length-1].cells[0].innerHTML; //第二种 //oTd1.innerHTML = parseInt(maxId) + 1; oTd1.innerHTML = maxId++; oTd2.innerHTML = oName.value; oTd3.innerHTML = oAge.value; oTd4.innerHTML = ‘<a href="javascript:;">删除</a>‘; /* oA.innerHTML = "删除"; oA.setAttribute("href","javascript:;"); oTd4.appendChild(oA); */ oTr.appendChild(oTd1); oTr.appendChild(oTd2); oTr.appendChild(oTd3); oTr.appendChild(oTd4); ////异常: 删除新添加行正常,删除旧行不正常
oTd4.getElementsByTagName("a")[0].onclick=function(){ oTab.tBodies[0].removeChild(this.parentNode.parentNode); } oTab.tBodies[0].appendChild(oTr); } // 异常:新添加的行不能删除 var aA = oTab.tBodies[0].getElementsByTagName("a"); for(var i=0; i<aA.length; i++){ aA[i].onclick = function(){ oTab.tBodies[0].removeChild(this.parentNode.parentNode); } }}
表格搜索
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
window.onload = function(){ var oTxt = document.getElementById("txt1"); var oBtn = document.getElementById("btn1"); var oTab = document.getElementById("tab1"); oBtn.onclick = function(){ for(var i=0; i<oTab.tBodies[0].rows.length; i++){ var oRow = oTab.tBodies[0].rows[i]; var vTd = oRow.cells[1].innerHTML; //if(oTxt.value =http://www.mamicode.com/= vTd){"line21"> //if(vTd.search(oTxt.value) != -1){ //模糊搜索str.search() //if(vTd.toLowerCase().search(oTxt.value.toLowerCase()) != -1){ //模糊搜索str.search() + 忽略大小写 //关联搜索 如“张,李” var arr = oTxt.value.split(‘,‘); oRow.style.background = ""; for(var j=0; j<arr.length; j++){ //这里不能再定义i,否则会出问题 if(vTd.toLowerCase().search(arr[j].toLowerCase()) != -1){ //模糊搜索str.search() + 忽略大小写 oRow.style.background = "green"; } } } }}