在动态javascript表中输入文本

时间:2018-09-15 15:35:09

标签: javascript html

我尝试在表格中生成一个文本字段: 随着用户的输入,表格变得更大,这就是为什么我不能只写 html文档中的输入语法,因为该单元格不是从一开始就生成的。

function tableAdd() {

   var table = document.getElementById("table");
   var titel = document.getElementById("Titel").value;
   var description = document.getElementById("Description").value; 




   var row = table.insertRow(); 


   var projectCell=row.insertCell(0);
   projectCell.innerHTML = titel;


   // down here is the problem

   var x =row.insertCell(1);
   x.innerHTML =  document.createElement("INPUT")
   x.innerHTML.setAttribute("type", "text");


 }

2 个答案:

答案 0 :(得分:0)

您正尝试将HTMLInputElement的引用(从对document.createElement("input");的调用返回给innerHTML({{1 }}在我的示例中)引用,由HTMLTableRowElement返回。

相反,您可以为newRow(在我的示例中为insertCell(1);变量)的value属性中分配任意文本值,并将动态输入附加到新创建的单元格中。

HTMLInputElement
input

以下是参考文档:

https://developer.mozilla.org/en-US/docs/Web/API/HTMLTableRowElement/insertCell https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement

答案 1 :(得分:0)

问题在于 Jan Feb Mar April Client1 0 20 30 10 Client2 0 0 65 80 Client3 0 0 54 12 是一个字符串,而不是html元素。您需要在html元素上设置属性,而不是字符串。您可以这样:

Measure  = CALCULATE(SUM('Table'[Value]), 
               DATEADD('Table'[Column], Parameter[Parameter Value], MONTH))