昨天看到有个帖子发了这段代码,^_^,刚好用上,珍藏了,谢谢!
不过有些地方不知道怎么处理。
如果要把table里面的数据居中,怎么处理呢?
如果没一行的每一个TD都给它一个ID应该怎么写呢?
会的朋友,麻烦帮帮忙。代码如下,复制到Dreamveaver比较容易看:
<html>
<script>
function InsertRow(obj)
{if(event.keyCode==13)
{
reg=/^\d*$/
if(!(reg.test(obj.value))){alert("输入错误:"+obj.value);return;}
var v=parseInt(obj.value);
if(!isNaN(v))
{
var tdnode=obj.parentNode;
var trnode=tdnode.parentNode;
var num = getProductNum(obj.name);
if(v>num){alert("库存不足:"+num);return;};
var trobj=trnode.parentNode.insertRow(trnode.rowIndex+1);
trobj.name=trnode.name;
for(var i=0; i < trnode.cells.length;i++)
{
var cobj=trobj.insertCell();
cobj.innerHTML=trnode.cells[i].innerHTML;
}
trobj.cells[tdnode.cellIndex].previousSibling.innerText=num-v;
trobj.cells[tdnode.cellIndex].firstChild.value="";
trobj.cells[tdnode.cellIndex].firstChild.focus();
}
else {event.keyCode=9;};
}
}function getProductNum(name)
{
var n=-1;
var ar=document.getElementsByName(name);
if(ar.length<=0)return n;
for(var i=0;i < ar.length;i++)
 {
 var tn = parseInt(ar[i].parentNode.previousSibling.innerText);
 if(isNaN(tn))continue;
 if(n==-1)n=tn;
 else n=n>tn?tn:n;
 }
return n==-1?0:n;
}
</script><body>
<table width="500" border=1 align="center">
<tr><td width="50">产品</td>       <td width="50">描述</td><td width="50">数量</td><td width="100">出口数量</td>   </tr>    
<tr><td>1</td><td>烦啊</td><td>100</td><td><input name="pd1" onKeyDown="InsertRow(this)"/></td></tr>  
<tr><td>2</td><td>急啊</td><td>100</td><td><input name="pd2" onKeyDown="InsertRow(this)"/></td></tr>  
</table>
</body>
</html>

解决方案 »

  1.   

    说明一下,
    新生成的每一行的数据都希望可以居中;
    新生成的每一行的每一个TD都标一个id;
    麻烦高手帮忙说一下应该怎么写。帮帮忙,谢谢
      

  2.   

    td{text-align:center}<td id="td1">
      

  3.   

    是在javascript里面实现
    不是html
    由于新生成的每一行是动态的,所以id也应该动态标识
    应该怎么写?
    三楼的朋友好像写的是html里面的吧,可以给我写一下javascript里面的吗?