简体   繁体   English

如何在表格单元格中插入输入字段?

[英]How insert an input field in a table cell?

Sorry for the noob question: I want to create a table with input fields where the can add new ones, if they are needed. 对于noob问题很抱歉:我想创建一个包含输入字段的表,如果需要,可以添加新字段。 But I can'T figure out how add another input field inside a cell where another input field already exists. 但我无法弄清楚如何在另一个输入字段已经存在的单元格中添加另一个输入字段。

My code is: 我的代码是:

var par=obj.parentNode;
while(par.nodeName.toLowerCase()!='tr')
{ par=par.parentNode; }
// this gives me the index of the row.. works fine.

cell1=document.getElementById('avz_tabelle').rows[par.rowIndex].cells;
// this puts the content of the cells into the array "cell1"

var feld = cell1[1].createElement("input"); 
feld.setAttribute("name","avz_keywords" + avz_array + "[]"); 
feld.setAttribute("onblur","");
feld.setAttribute("type","text"); 
feld.setAttribute("size","30"); 
// Now I create a input element
// And now comes the problem:

cell1[1].appendChild(feld); // --> doesn't work

Has anyone a suggestion for me? 有人对我提出建议吗? I got the idea to work without a table, theoratically that would work with my way. 我有了一个没有桌子工作的想法,理论上这可以用我的方式。 But that wouldn't be satisfying :/ 但这不会令人满意:/

If you look in a debugging console, you should see something like 如果您查看调试控制台,您应该会看到类似的内容

TypeError: Object #<HTMLDivElement> has no method 'createElement'

Instead of creating the element from cell1[1] , use document.createElement() 而不是从cell1[1]创建元素, cell1[1]使用document.createElement()

 var feld = document.createElement("input");

You should use document.createElement("input"); 你应该使用document.createElement("input"); instead of cell1[1].createElement("input"); 而不是cell1[1].createElement("input");

As always (and as also stated in another answer here), the JavaScript console should be the first place to look for hints on what the problem is! 一如既往(并在此处的另一个答案中也有说明),JavaScript控制台应该是第一个寻找问题提示的提示!

And wouldn't it actually be much easier if each table cell you want to add values to got a separate ID? 如果您想要添加值的每个表格单元格获得单独的ID,实际上不会更容易吗? Something containing perhaps the row index and the column index ... Then you could just select it directly. 包含行索引和列索引的东西......然后你可以直接选择它。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM