<html> <head> <style> .btf{ height:28px; background-color:#F8F0E1; } </style> <script type="text/javascript"> var objTable; function PageLoad(){ objTable = document.getElementById( "dataGrid" );//找到操作Table } function copyRow(){ var objTempRow = objTable.rows[2];//找到Table的模版行 var objNewRow = objTable.insertRow( objTable.rows.length );//在Table的末尾新增一行 objNewRow.className = "btf";//给表格的添加行样式 objNewRow.id = objTable.rows.length - 1; //以模版行建立新行内容 for ( var i=0 ; i<objTempRow.cells.length ; i++ ){ var objNewCell = objNewRow.insertCell( i ); objNewCell.innerHTML = objTempRow.cells[i].innerHTML; } } function deletelastRow(){ if ( objTable.rows.length -1 > 0 ){ objTable.deleteRow(objTable.rows.length-1); //删除指定行 } } function deletecheckedRow(){ if(document.all('idarray').value!='undefined'){ for(var i=document.all('idarray').length-1;i>-1;i--){ if(document.all('idarray')[i].checked==true){ var r=Number(document.getElementById('tb'+document.all('idarray')[i].value).rowIndex); objTable.deleteRow(r); } } } } function deleteRow(r){ var i=r.parentNode.parentNode.rowIndex; objTable.deleteRow(i); } function addRow1(){ var crTR = objTable.insertRow(); //增加一行 var crTDa = crTR.insertCell();//第一个TD var crTDb = crTR.insertCell();//第二个TD,带rowspan=2 crTDb.rowSpan=2;//设成rowspan=2; crTDb.colSpan=3;//设成colSpan=3; var croTR = objTable.insertRow();//再插入一个TR var croTD = croTR.insertCell();//TD,对应上边的rowspan=3的TD //给单元格添加内容 crTDa.innerHTML="<b>111111</b>这里innerHTML"; crTDb.innerHTML="222222跨行跨列:rowspan=2,colSpan=3"; croTD.innerText="<b>333333</b>这里innerText"; croTD.width="20px;";//设置单列的宽度 croTD.height="80px;";//设置单列的高度 crTR.setAttribute('align','center');//这里通过setAttribute增加表单属性, } function addRow2(){ var crTR = objTable.insertRow(); var crTDa = crTR.insertCell(); var crTDb = crTR.insertCell(); crTDa.rowSpan=2; crTDb.colSpan=3; croTR = objTable.insertRow(); var crTDc = croTR.insertCell(); crTDc.colSpan=3; crTDa.innerHTML="111111 rowspan=2"; crTDb.innerHTML="222222 colSpan=3"; crTDc.innerHTML="333333 colSpan=3"; } function mergecells(){ if(objTable.rows[3].cells[3]==null)return false;//如果已经删除了,那就不允许再操作了 objTable.rows[3].cells[2].innerHTML=objTable.rows[3].cells[2].innerHTML+objTable.rows[3].cells[3].innerHTML; objTable.rows[3].cells[2].colSpan=2; objTable.rows[3].deleteCell(3);//删除指定列 //如果想要拆分单元格,那么1、可以先删除行,再添加新的行。 //2、可以在当前单元格中增加一个table,其行数和列数就是拆分的行数和列数。 } function isshowtitlerow(){ if(document.getElementById("title").style.display=='')document.getElementById("title").style.display ="none"; else document.getElementById("title").style.display =""; } function addtable(){ var otable=document.createElement("table");//创建一表格 //设置table的属性 otable.setAttribute("CELLPADDING","0"); otable.setAttribute("CELLSPACING","0"); otable.setAttribute("border","1"); var otr=otable.insertRow();//创建一空行 var otd1 = otr.insertCell();//创建一空列 var otd2 = otr.insertCell();//创建一空列 otable.width='880'; otr.className = "btf"; //行添加样式 otd1.innerHTML = '单元格1'; //空列初始化值 otd2.innerHTML = '单元格2居中'; //空列初始化值 //设置列属性 otd2.style.background="#7596C6"; otd2.align="center";//等同.setAttribute('align','center'); document.getElementById('addtable').innerHTML=""; document.getElementById('addtable').appendChild(otable);//把表格追加到页面的div中 } window.onload = PageLoad;//初始化获得所要操作的表格句柄 </script> </head> <body> <table id="dataGrid" border="1" width="880" align="center"> <tr id="title"> <th> </th> <th>权限组名</th> <th>权限组描述</th> <th>删除</th> </tr> <tr id="tb965"> <td><input type="checkbox" name="idarray" value="965" /></td> <td>船舶签证</td> <td>船舶签证啊啊</td> <td><input type="button" value="删除当前行" onclick="deleteRow(this)"></td> </tr> <tr id="tb961"> <td><input type="checkbox" name="idarray" value="961" /></td> <td>拷贝项</td> <td>被拷贝</td> <td><input type="button" value="删除当前行" onclick="deleteRow(this)"></td> </tr> <tr id="tb960"> <td><input type="checkbox" name="idarray" value="960" /></td> <td>违章录入</td> <td>违章录入哦</td> <td><input type="button" value="删除当前行" onclick="deleteRow(this)"></td> </tr> </table> <div id="addtable">在这里按“增加一个表格”会插入一个表格</div> <input type="button" value="删除选中的行" onclick="deletecheckedRow();" /> <input id="btnInsert" name="btnInsert" type="button" onclick="copyRow()" value="拷贝第二行(带样式)" /> <input id="btnDelete" name="btnDelete" type="button" onclick="deletelastRow()" value="删除末行" /> <input type="button" value="增加一行(用setAttribute增加属性)" onclick="addRow1();" /> <input type="button" value="增加一行(另)" onclick="addRow2();" /> <input type="button" value="隐藏/显示标题栏" onclick="isshowtitlerow();" /> <input type="button" value="取table的属性" onclick="alert(objTable.getAttribute('id')+':'+objTable.getAttribute('border'));" /> <input type="button" value="合并第3行的后两列" onclick="mergecells();" /> <input type="button" value="增加一个表格" onclick="addtable();" /> <input type="button" value="共有多少行?" onclick="alert(objTable.rows.length);" /> </body> </html>