2011-05-08 97 views
1

我想在窗体中的动态位置添加几个文本框。在动态位置在JavaScript中添加文本框

说这句话enter image description here

我的JavaScript是这样的:

function addRow(tableID) { 

     var table = document.getElementById(tableID); 

     var rowCount = table.rows.length; 
     var row = table.insertRow(rowCount); 

     var cell1 = row.insertCell(0); 
     var element1 = document.createElement('<input type="checkbox" name="chk">'); 
     cell1.appendChild(element1); 

     var cell4 = row.insertCell(3); 
     var element4 = document.createElement('<INPUT type="text" name="SubpartID"/>'); 
     cell4.appendChild(element4); 

     var cell5 = row.insertCell(4); 
     var element5 = document.createElement('<INPUT type="text" name="Quantity" value="1" />'); 
     cell5.appendChild(element5); 

    } 

但这个脚本的问题是,当我点击“添加分部输入行”按钮,我能看到添加了新行,但仅限于此复选框。

我猜cell4.appendChild(element4);cell5.appendChild(element5);不起作用。

所以输出看起来像这样,

enter image description here

能否请你帮忙吗?

+0

如果您使用的是Firebug或Google Chrome浏览器,在运行此代码时是否确认没有错误? – Blender 2011-05-08 03:51:05

回答

0

似乎你正在使用document.createElement错误的方式。你需要这样做:

var element5 = document.createElement('input'); 
    element5.type = 'text'; 
    element5.name = 'Quantity'; 
    element5.value = 1; 
cell5.appendChild(element5); 

其余应该是相同的,除了具有不同的属性和值。

+0

我明白了这一点。我应该有一个虚拟的孩子在行。 'row.insertCell(1);'和'row.insertCell(2);' – narayanan 2011-05-08 17:52:07