其实我想做的事情很简单。
做一个表格,可以索引到这个表格任意的某个单元格,对单元格的内容进行修改,或者将其设置为不可编辑之类的。
现在呢,由于这个表格中单元格数量比较多,要是每个单元格都用ID之类的,那就太大工作量了。有没有现成的表格组件,可以直接索引到某个单元格,类似于table.at(x,y).。这种的功能。
不需要支持AJAX,也不需要其他的高级功能比如排序、合计之类的。最好是单纯的一个JS文件,挂上就能用的。或者还有什么更简单的方法,请赐教。
做一个表格,可以索引到这个表格任意的某个单元格,对单元格的内容进行修改,或者将其设置为不可编辑之类的。
现在呢,由于这个表格中单元格数量比较多,要是每个单元格都用ID之类的,那就太大工作量了。有没有现成的表格组件,可以直接索引到某个单元格,类似于table.at(x,y).。这种的功能。
不需要支持AJAX,也不需要其他的高级功能比如排序、合计之类的。最好是单纯的一个JS文件,挂上就能用的。或者还有什么更简单的方法,请赐教。
下面只剩下一个问题:取数时,如果单元格里面是一个输入框,
我怎么判断这里面是一个输入框,并拿到输入框里面的内容。
alert(tb.rows[y].cells[x].firstChild.value);
return document.getElementById(tableId).rows[x-1].cells[y-1];
}tableId为table的id
使用方法:比方说我要取id为"tb"的table的第n行第n 列的innerHTML,那就这样:
at(n,n).innerHTML
按你的意思是,有两种情况
1.td里面是纯文本,则取出全部文本
2.td里面是input(这里是文本框),取出其value
写个js方法:function getText(tableId,x,y)
{
//alert(at(tableId,x,y).childNodes[0].tagName);
var tagName=at(tableId,x,y).firstChild.tagName;
if(typeof tagName=="undefined")//纯文本的情况
{
return at(tableId,x,y).innerHTML;
}else //其它情况
{
return at(tableId,x,y).firstChild.value;
}
}
return document.getElementById(tableId).rows[x-1].cells[y-1];
}