Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用循环为表中的每列创建标题。JavaScript_Javascript - Fatal编程技术网

使用循环为表中的每列创建标题。JavaScript

使用循环为表中的每列创建标题。JavaScript,javascript,Javascript,我希望表中每一列的标题都是'a','B','C'等等,我希望能够更改有多少列,所以我希望使用循环。 迄今为止的代码: JavaScript: <script> document.getElementById('dtable').innerHTML = ''; var table = document.getElementById("dtable") Rows = 4 for (var count = 0; count <= Rows; count++) { var he

我希望表中每一列的标题都是'a','B','C'等等,我希望能够更改有多少列,所以我希望使用循环。 迄今为止的代码:

JavaScript:

<script>
document.getElementById('dtable').innerHTML = '';
var table = document.getElementById("dtable")
Rows = 4
for (var count = 0; count <= Rows; count++) {
    var header = table.createTHead(0);
    var row = header.insertRow(0); 
    var character = String.fromCharCode(65 + count);
    var cell = row.insertCell(count);
    cell.innerHTML =('<b>'+character+'</b>');
}
</script>

document.getElementById('dtable')。innerHTML='';
var table=document.getElementById(“dtable”)
行数=4

对于(var count=0;count您在标题中为每列创建了一行。 将thead创建移到循环之外修复了它

document.getElementById('dtable')。innerHTML='';
var table=document.getElementById(“dtable”);
var header=table.createTHead(0);
var row=表头.插入行(0);
行数=4

对于(var count=0;count您不想在循环内部创建新行,对吗?将头部和行创建移到循环外部

比如:


document.getElementById('dtable')。innerHTML='';
var table=document.getElementById(“dtable”)
行数=4
var header=table.createTHead(0);
var row=表头.插入行(0);
对于(var count=0;count@Dilly,
使用这把小提琴…尽可能多地回答文章-你需要创建一行,并根据你的意愿创建多个列…因此,为列而不是行循环。这也提醒我告诉你-请不要使用循环计数变量名称作为“行”,这是一个混淆点。你应该命名它-例如numOfColumns

多亏了这篇评论,我才添加了这篇评论

document.getElementById('dtable')。innerHTML='';
var table=document.getElementById(“dtable”)
var行=table.insertRow(0);
行数=4
对于(变量计数=0;计数<行;计数++){
var character=String.fromCharCode(65+计数);
var单元=行插入单元(计数);
cell.innerHTML=(“”+字符+“”);
}

您的问题是在
for
循环中创建标题和行,这意味着您每次都要创建新行,这会导致
row.insertCell
出现问题。第一次迭代有效,因为您在第0个位置插入单元格,但循环的第二次迭代尝试当第0个位置的单元格不存在时,请在第1个位置插入一个单元格,这就是为什么它会抛出错误。尝试此操作,它应该适用于您:

document.getElementById('dtable')。innerHTML='';
var table=document.getElementById(“dtable”);
var行=4;
var header=table.createTHead(0);
var row=表头.插入行(0);

对于(var count=0;count Why?纯代码答案对未来用户通常不是很有用
<div id='div1'><table id="dtable"></table></div> 
<script>
document.getElementById('dtable').innerHTML = '';
var table = document.getElementById("dtable")
Rows = 4
var header = table.createTHead(0);
var row = header.insertRow(0); 
for (var count = 0; count <= Rows; count++) { 
    var character = String.fromCharCode(65 + count);
    var cell = row.insertCell(count);
    cell.innerHTML =('<b>'+character+'</b>');
}
</script>
document.getElementById('dtable').innerHTML = '';
var table = document.getElementById("dtable")
var row = table.insertRow(0); 
Rows = 4
for (var count = 0; count < Rows; count++) {
    var character = String.fromCharCode(65 + count);
    var cell = row.insertCell(count);
    cell.innerHTML =('<b>'+character+'</b>');
}