####javascript关于动态在表格中添加行和单元格的问题
小弟不怎么了解javascript,现在有个问题如下:
在输入框中输入值,回车后在下面的表格中新添加一行,在新行里添加一个单元格显示出刚才输入的值。
我已经实现了添加一行和一个单元格,可是我希望在新一行中添加4个单元格后在添加新的行(也就是,第一个回车添加一行,同是在这个行中添加一个单元格。第二、三、四个回车只在刚才的新行中添加单元格。第五个回车再添加一行),我研究了好久,也没有结果
<script language="javascript">
function setid()
{
if(event.keyCode==13)
{
document.form1.num.value=parseInt(document.form1.num.value)+1
var count
count=document.form1.num.value
var newTr = table1.insertRow(0);
var id
id=parseInt(document.form1.num1.value)
var newTd0 = newTr.insertCell();
var newTd1 = newTr.insertCell();
newTd0.innerText= '卡'+document.form1.num.value;
newTd1.innerText= cardno.value;
cardno.value="";
cardno.focus();
}
//return false
}
</script>
<body>
<input type="text" name="cardno" id="cardno" onKeyDown="setid();" >
<form name="form1" action="" method="get" onSubmit=" return false;">
<table width="1000" border="0" align="center" id="table1">
<tr>
<td width="75">
卡100000
</td>
<td width="140">
<input name="num" type="text" id="num" value=0 size="20" >
</td>
<td width="75">
卡100000
</td>
<td width="140">
<input name="num1" type="text" id="num1" value=2 size="20" >
</td>
<td width="75">
卡100000
</td>
<td width="140">
<input name="num2" type="text" id="num2" value=0 size="20" readonly="true">
</td>
<td width="75">
卡100000
</td>
<td width="140">
<input name="num3" type="text" id="num3" value=0 size="20" readonly="true">
</td>
</tr>
<tr>
<td id="cardnum" width="74">
</td>
</tr>
</table>
</form>
<script>
cardno.focus();
//alert(table1.rows.length)
</script>
问题点数:40、回复次数:6Top
1 楼scalewingzip(程是程序员的程,序是程序员的序,员是程序员的员)回复于 2006-07-02 17:44:39 得分 0
help me!!!Top
2 楼scalewingzip(程是程序员的程,序是程序员的序,员是程序员的员)回复于 2006-07-03 00:34:30 得分 0
来个人帮帮偶啊Top
3 楼xuStanly(依依myLove)回复于 2006-07-03 11:00:06 得分 0
<script>
var columnNo = 0;
function setid()
{
if(event.keyCode==13 && (columnNo == 0 || columnNo == 4))
{
document.form1.num.value=parseInt(document.form1.num.value)+1
var count
count=document.form1.num.value
var newTr = table1.insertRow(0);
var id
id=parseInt(document.form1.num1.value)
var newTd = newTr.insertCell();
//var newTd1 = newTr.insertCell();
newTd.innerText= '卡'+document.form1.num.value;
newTd = newTr.insertCell();
newTd.innerText= cardno.value;
columnNo = newTd.cellIndex;
cardno.value="";
cardno.focus();
}
//return false
}
else
{
//插入新行.
}
</script>
草成,未测试,主要用cellIndex判断当前插入的第几列.Top
4 楼scalewingzip(程是程序员的程,序是程序员的序,员是程序员的员)回复于 2006-07-03 11:34:39 得分 0
好像 不对啊,
Top
5 楼scalewingzip(程是程序员的程,序是程序员的序,员是程序员的员)回复于 2006-07-03 11:45:51 得分 0
插入一行两列后,下次操作,怎么判断当前插入第几行,Top
6 楼xuStanly(依依myLove)回复于 2006-07-03 15:09:17 得分 40
去下个DHTML参考手册,查找关于table,row,cell的方法和属性,应该可以的。Top




