如何动态插入td

lwjvince 2006-05-29 10:34:08
动态删除td 的代码如下:
function deltr(td)//删除一行
{
var CZobj=document.getElementById('tab_cp_select');
CZobj.deleteRow(td.parentElement.rowIndex);
//增加一行
addRow(CZobj);
for(var i=0; i<coum.length;i++)//重新得到编号
{
coum[i].children[0].innerHTML="<input class=bd1 readOnly size=1 value='"+(i+1)+"' name=input>";
}
}
function addRow(objTable)
{
//取得指定表格的TBODY
var tbodyOnlineEdit=objTable.getElementsByTagName("TBODY")[0];
//取得指定表格的THEAD
var theadOnlineEdit=objTable.getElementsByTagName("THEAD")[0];
//复制THEAD的最后一个TR并赋值给elm
var elm = objTable.lastChild.lastChild.cloneNode(true);
elm.style.display="";
for(var c=1;c<elm.children.length;c++)//清除值
{
elm.children[c].children[0].value="";//清除数据,因为最后一行是新加的,不应有数据
}
//把elm插入到TBODY并做为TBODY的一个子元素
tbodyOnlineEdit.insertBefore(elm);
}


现在要插入一个td 然后后面的ROW 序号自动增加
请高手给个插入的代码 谢谢!!~~
...全文
399 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
lwjvince 2006-05-31
  • 打赏
  • 举报
回复
我在前台写好了JAVASCRIPT 如何把后台进行的数据库连接等操作相关起来

比如我在前台做了这样一个TABLE 有插入 删除功能 。
那么如何把数据库的表绑到这个TABLE 上让它自动生成具有那些功能的页面?
(不是要如何在前台连接数据库)
lwjvince 2006-05-30
  • 打赏
  • 举报
回复
要获取当前节点然后再 进行插入才行啊
不然怎么能动态呢
lwjvince 2006-05-29
  • 打赏
  • 举报
回复
是插入一行。请仔细看下代码。

td.parentElement.rowIndex 做何解?

谢谢
huxinsheng168 2006-05-29
  • 打赏
  • 举报
回复
createElement("td");
mindon 2006-05-29
  • 打赏
  • 举报
回复
干吗用id?

var mytab = document.getElementById("MyTable");

//通过 mytab.rows[n].cells[k] 可以访问第n行的第k个格
//如
var cell = mytab.rows[n].cells[k];
var s = cell.innerHTML;
cell.bgColor = "red";

//...
DeluxWorld 2006-05-29
  • 打赏
  • 举报
回复
参考
http://community.csdn.net/Expert/topic/4768/4768329.xml?temp=.8564722
Apq001 2006-05-29
  • 打赏
  • 举报
回复
table.insertRow()//添加一行,对应于HTML:<tr/>
tr.insertCell()//添加一格,对应于HTML:<td/>

所有附加的属性,必须另外用代码写出来。

记得我初学JS的时候,这个问题也是困扰了我好几天才给我找出来,那个时候人很傻,连MSDN都不怎么会查,也正是这件事,让我学会了怎么查阅MSDN,所以,我是很感激这两个函数的。哈哈
lwjvince 2006-05-29
  • 打赏
  • 举报
回复
function intr(td)//插入一行
{
var CYobj=document.getElementById ('tab_cp_select');
CYobj.insertRow(td.parentElement.rowIndex);
inRow(CYobj);
for(var i=0; i<coum.length;i++)//重新得到编号
{
coum[i].children[0].innerHTML="<input class=bd1 readOnly size=1 value='"+(i+1)+"' name=input>";

}
}
function inRow(objTable)
{
//取得指定表格的TBODY
var tbodyOnlineEdit=objTable.getElementsByTagName("TBODY")[0];
//取得指定表格的THEAD
var theadOnlineEdit=objTable.getElementsByTagName("THEAD")[0];
// 获取当前节点的位置
var prenode=objTable.lastChild.previousSibling.cloneNode(true);
//复制THEAD的最后一个TR并赋值给elm
var elm = objTable.lastChild.lastChild.cloneNode(true);
elm.style.display="";
for(var c=1;c<elm.children.length;c++)//清除值
{
elm.children[c].children[0].value="";//清除数据,因为最后一行是新加的,不应有数据
}
//把elm插入到TBODY并做为TBODY的一个子元素
tbodyOnlineEdit.insertBefore(elm,prenode);
}


我写成这样 ,但还是不行。我的目的是把elm空行插入到当前的一个行前面

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧