js如何动态添加一行到table的第一行 本帖最后由 alex197963 于 2009-08-03 17:55:33 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <script language="javascript" type="text/javascript">function add(){ var tb = document.getElementById("tb"); var tr = tb.insertRow(0); tr.style.cssText = tb.rows[1].style.cssText; var td = tr.insertCell(); td.innerHTML = "00000";}</script><input type="button" onclick="add()" value="add"><table id="tb"> <tr style="background:#CCC"><td>xxx</td></tr></table> /*insertRow()这样是IE独有的.标准用法是:insertRow(-1): index为-1的时候就是默认插在最后一行.insertRow( 0): index为0的时候就是插在第一行至于样式一样 应该在样式表里统一设置.*/ 呵呵我的也得了,参考一下,可以插在任意行后面的<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><title>无标题文档</title></head><script language="javascript" type="text/javascript">function getO(id){if (typeof(id)=="string") return document.getElementById(id); }function appendAfterRow(tableID,RowIndex){//FUNCTION: 向指定行后面增加一行,列数和第一行的列数一样var o=getO(tableID);var refRow=RowIndex;var cells=o.rows[0].cells.length;if(refRow=="") refRow = getO("nRow").value;var v="";var newRefRow=o.insertRow(refRow);for (var i=0;i<cells;i++) { if(o.rows.length<10) v="0"+o.rows.length+"0"+(i+1); else v=o.rows.length+"0"+(i+1); newRefRow.insertCell(i).innerHTML=v; }}</script><body><table width="100%" border="3" cellpadding="4" cellspacing="8" id="tb01" name="tb01"> <tr bgcolor="#CCCCCC"> <td>0101</td> <td>0102</td> <td>0103</td> <td>0104</td> </tr> <tr> <td>02</td> <td>0202</td> <td>0203</td> <td>0204</td> </tr></table>在第<input name="nRow" type="text" id="nRow" onkeyup="this.value=this.value.replace(/[^0-9]*$/g,'');" value="1" size="10">行后面<input type="button" value="插入行" name="btn01" onClick="javascript:appendAfterRow('tb01','');"></body></html>Hookee老大那么快啊 :) 怪了,我这个在MS,FF,NS IE下都可以运行,刚测了... table.insertRow(0); chrome浏览器下,获得了元素的坐标值之后,怎么把元素的内容返回回来??急急急 将input file的选择的文件清空的问题? 关于JQ clone的问题,大家进来帮帮忙看看,拜托啦 大家来帮忙看看这个怎么实现 继续发帖,div滚动条的问题 IE8 DWR addScript失效! Dtree 请问这段代码的意义是什么? 取得Css样式宽度的问题? 文本框追加赋值 从jquery对象中提取xml 页面大小改变执行特定函数
<script language="javascript" type="text/javascript">
function add(){
var tb = document.getElementById("tb");
var tr = tb.insertRow(0);
tr.style.cssText = tb.rows[1].style.cssText;
var td = tr.insertCell();
td.innerHTML = "00000";
}
</script>
<input type="button" onclick="add()" value="add">
<table id="tb">
<tr style="background:#CCC"><td>xxx</td></tr>
</table>
/*
insertRow()这样是IE独有的.
标准用法是:
insertRow(-1): index为-1的时候就是默认插在最后一行.
insertRow( 0): index为0的时候就是插在第一行
至于样式一样 应该在样式表里统一设置.*/
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head>
<script language="javascript" type="text/javascript">
function getO(id)
{
if (typeof(id)=="string")
return document.getElementById(id);
}function appendAfterRow(tableID,RowIndex)
{
//FUNCTION: 向指定行后面增加一行,列数和第一行的列数一样
var o=getO(tableID);
var refRow=RowIndex;
var cells=o.rows[0].cells.length;
if(refRow=="") refRow = getO("nRow").value;
var v="";
var newRefRow=o.insertRow(refRow);
for (var i=0;i<cells;i++)
{
if(o.rows.length<10)
v="0"+o.rows.length+"0"+(i+1);
else
v=o.rows.length+"0"+(i+1);
newRefRow.insertCell(i).innerHTML=v;
}
}
</script>
<body>
<table width="100%" border="3" cellpadding="4" cellspacing="8" id="tb01" name="tb01">
<tr bgcolor="#CCCCCC">
<td>0101</td>
<td>0102</td>
<td>0103</td>
<td>0104</td>
</tr>
<tr>
<td>02</td>
<td>0202</td>
<td>0203</td>
<td>0204</td>
</tr>
</table>
在第<input name="nRow" type="text" id="nRow" onkeyup="this.value=this.value.replace(/[^0-9]*$/g,'');" value="1" size="10">行后面
<input type="button" value="插入行" name="btn01" onClick="javascript:appendAfterRow('tb01','');">
</body>
</html>
Hookee老大那么快啊 :)