求JS操作动态表格的全部方法,添加删除行列,单元格,设置属性等。

JavaScript042

求JS操作动态表格的全部方法,添加删除行列,单元格,设置属性等。,第1张

JS动态操作表格

2008年10月22日 星期三 下午 04:27

删除:<input type="button" name="del" value="删除" onclick="del(this)">

1、function del(o)

{

var t=document.getElementById('testTbl')

t.deleteRow(o.parentNode.parentNode.rowIndex)

}

2、 var table=document.getElementById("tableName")

var len=table.rows.length

if(len>1){

for(i=1i<leni++){

table.deleteRow(1)

}

}

添加:

1、function addRow(){

//添加行

var newTr = testTbl.insertRow()

//添加列

var newTd0 = newTr.insertCell()

var newTd1 = newTr.insertCell()

var newTd2 = newTr.insertCell()

var newTd3 = newTr.insertCell()

//设置列内容和属性

newTd0.innerText = document.all("a").options[document.all("a").selectedIndex].text

newTd1.innerText = document.all("b").value

newTd2.innerText = document.all("c").value

newTd3.innerHTML= '<input type="button" name="del" value="删除" onclick="del(this)">'

}

注意写法。

2、//先获取该表格的引用:

var Container = document.getElementById(TableId)

//然后创建行(TR对象)

var NewTr = document.createElement("tr")

//填充该表格行

var NewTd1 = document.createElement("td")

var NewTd2 = document.createElement("td")

......

NewTr.appendChild(NewTd1)

NewTr.appendChild(NewTd2)

添加到最后一个TR上:var LastTr = Container.rows[Container.rows.length - 1]

LastTr.parentNode.appendChild(NewTr)

通常来讲,从表格中删除某一行一般是通过表格的deleteRow()方法和行的rowIndex属性来删除

首先分析下你的页面 页面运行后 自动从session中取出对应的值然后调用你的函数来进行输出 所以说只要你的session中有值 页面一旦刷新 就会从新加载 结果就是 表格一定会输出 所以现在问题就是移动到了你要处理session中的值 ,我换个说法,也就是说只要你的session中有值 页面刷新肯定会出现这个值 你用js只是将这个表格删掉 也就是说你上面的函数变成了没有表格 但是值还有 所以说会出现表格没了 但是值还有。

我有一个提议 难道说一定要用js么?打个比方如果说我使用一个a链接 点击后传递一个id值到当前页面 然后你再做输出时候 用 $id = isset($_GET['id'])?:$_GET['id']:''这句话来获取一下 id值 然后判断如果这个id有值的话 就直接将session中的对应的信息删除就好了

你这段运行的关键在于session中的值 只要session中有值,输出一定输出 如果session中没了值 肯定不会输出。

非要用js的话 我能想到的只有ajax来使用 要不你的session中的值永远清不掉 清不掉就代表会显示

还有就是 如果说这个值没用的话 那么就是直接使用js动态给表格添加一个属性 display = 'none'让这个表格不显示就是了 但是这个说白了还是在骗自己 显示没了但是其实数值还有 所以说治标不治本