HTML里有col元素和colgroup。
但我在网上看到的列操作全部是类似下面的做法:
for(var i=0;i<rows;i++)
{
document.all.myTable.rows[i].deleteCell(column_number)
} 难道不能直接操作列元素?我想知道如何获取列对象。不幸的是,没见有给col赋ID的情况。我的问题是:如何通过一个cell来获取该cell所属的col?
但我在网上看到的列操作全部是类似下面的做法:
for(var i=0;i<rows;i++)
{
document.all.myTable.rows[i].deleteCell(column_number)
} 难道不能直接操作列元素?我想知道如何获取列对象。不幸的是,没见有给col赋ID的情况。我的问题是:如何通过一个cell来获取该cell所属的col?
解决方案 »
- 不管是utf-8 还是gb2312的html页面, 里面的javascript的字符串都是unicode编码吗?
- 怎么点击一个连接打开新网站的同时 起初页面也转向新的网址
- JS实现图片滚动的问题
- 我用IFRAME做了一个HTML编辑器,请问如何让右键出来的是复制、拷贝粘贴的那个菜单?
- 问asp能否实现类似delphi TIdTcpClient组件功能
- select的输入是否可以支持从键盘输入,并且可以从列表中动态匹配与输入的信息最接近的项目?
- 贡献一个小小的在线文本编辑器DIVText
- 关于remove的问题
- window.pageX和window.pageY的属性不能用,why???
- 方法参数传递,可是在数组却取不到??
- 有没有整理javascript代码格式 的软件或工具?
- treeview的所有节点前均会有复选框
那应判断wk是不是等于3,如果是,就是你要的例。
//添加行
function addTR(){
var tab = document.getElementById("tab"); //获得表格对象
var tab_len = tab.rows.length;
var i = tab_len; //i 从0开始
var new_row = tab.insertRow(i);
var the_cell;
//第一列
the_cell = new_row.insertCell(0);
the_cell.innerHTML= "<input type='text' name='name'>";
//第er列
the_cell = new_row.insertCell(1);
the_cell.innerHTML= "<input type='text' name='age'>";
//第san列
the_cell = new_row.insertCell(2);
the_cell.innerHTML= "<select name='mb'><option value='男'>男</option><option value='女'>女</option></select>";
//第si列
the_cell = new_row.insertCell(3);
//the_cell.innerHTML= "<input type='button' value='删除' onClick='delTR()'/>";
the_cell.innerHTML= "<a href='#' onclick='delTR()' >删除</a>";
}
/*
1:var obj=event.srcElement;
2:obj.tagName=='TD'
3:obj.parentElement.id
1. 获取当然事件触发对象
2. 对象的标签名等于TD
3. 对象的父标签的id属性
*/
//删除行
function delTR(){
var tab = document.getElementById("tab"); //获得表格对象
var the_cell=get_Element(event.srcElement,"td"); //获得当前的列
var index=the_cell.parentElement.rowIndex; // 通过当前列找到行对象,并且得到行的索引
tab.deleteRow(index);
}
//获得点击行的对象
function get_Element(the_ele,the_tag){
the_tag =the_tag.toLowerCase();
if(the_ele.tagName.toLowerCase()==the_tag){
return the_ele;
}
while(the_ele=the_ele.offsetParent){
if(the_ele.tagName.toLowerCase()==the_tag){
return the_ele;
}
}
return null;
}
</script>
<tr>
<td width="150">名称</td>
<td width="150">年龄</td>
<td width="150">性别</td>
<td width="150"><a href="javascript:addTR();">添加</a></td>
</tr>
<tr>
<td>11</td>
<td>11</td>
<td>11</td>
<td><input type='button' value='删除' onClick='delTR()'/></td>
</tr>
<tr>
<td>22</td>
<td>22</td>
<td>22</td>
<td><input type='button' value='删除' onClick='delTR()'/></td>
</tr>
</table>
问题是,我要得到作为节点的col。
如果得到了col节点,就可以一次性的remove。实际上,我对html,dhmtl,mshtml这几个概念还不清楚。
比如,我知道webbrowser有IHTMLTable,IHTMLTableRow以及IHTMLTableCol接口,IHTMLTable接口可以insertrow和deleterow,但是,没有提供相应的列操作。msdn上说,col是一个block element,但非常奇怪的是,DHTML Collections里有cells和rows,就是没有cols。