如何从表单提交中生成DIV表?

时间:2019-01-30 01:01:47

标签: javascript html css

我正在尝试使用下面显示的JavaScript(无jQuery)生成DIV表标题行,但没有显示此处的预期输出,而是生成数组中的一行项目(标题以逗号分隔) )。

Div Table heading

var main = document.getElementById("left");

  var likertTable = document.createElement("DIV"); //main table div
  likertTable.setAttribute("class", "divTable");

  var tableHeading = document.createElement("DIV"); // table heading
  tableHeading.setAttribute("class", "divTableHeading");

  var row = document.createElement("DIV");
  row.setAttribute("class", "divTableRow");
  tableHeading.appendChild(row);
  likertTable.appendChild(tableHeading);
  main.appendChild(likertTable);

var tableHeader = ["Question", "Strongly Agree", "Agree", "Undecided", "Disagree", "Strongly Disagree"];
  for (var i = 0; i < tableHeader.length; i++) {
   var tableCell = document.createElement("DIV");
   tableCell.setAttribute("class","divTableCell");
   row.appendChild(tableCell);
   tableCell.innerHTML = tableHeader[i];
   }
.divTable{
	display: table;
	width: 100%;
}
.divTableRow {
	display: table-row;
}
/*.divTableHeading {
	background-color: #EEE;
	display: table-header-group;
}*/
.divTableCell, .divTableHead {
	border: 1px solid #999999;
	display: table-cell;
	padding: 3px 10px;
}
.divTableHeading {
	background-color: #EEE;
	display: table-header-group;
	font-weight: bold;
}
.divTableFoot {
	background-color: #EEE;
	display: table-footer-group;
	font-weight: bold;
}
.divTableBody {
	display: table-row-group;
}
<div id="left"></div>

实际变量为var tableHeader = [ranges];,它在屏幕截图中可以正常显示,并且如果使用TH而不是DIV标记生成常规HTML表,则该代码段可以正确附加。

我要去哪里错了?哦,射!!!问一个回答! var tableHeader = [ranges];应该是var tableHeader = ranges;

由于脚本在摘要编辑器中完美运行,因此非常方便。

感谢StackOverflow。

1 个答案:

答案 0 :(得分:0)

var tableHeader = [ranges];应该是var tableHeader = ranges;,因为前者将数组放在两对方括号中,而不会在控制台中引发错误。