1

我对 HTML 和任何网络开发都非常陌生,如果这个问题非常简单,我很抱歉。到目前为止,我从用户那里获取了一些输入,对它们进行了一些计算(使用我在 head 标签中声明的 javascript 函数),然后给出了答案。在进行计算时,我将值存储在数组中,我希望用户能够看到这些数组中的内容。我想在表格中显示这些值。但是,我不知道如何将数组的值放在表格的显示中。我知道这就是表格的工作方式:

<table border="1">
<tr>
<td>row 1, cell 1</td>
<td>row 1, cell 2</td>
</tr>
<tr>
<td>row 2, cell 1</td>
<td>row 2, cell 2</td>
</tr>
</table>

但我想将我的值放在“第 1 行,第 1 行”等位置。据我了解,表格标签必须用于 HTML 代码的正文部分(如果我错了,请告诉我! ) 所以我不知道该怎么做。在我的函数中计算我的值时,我不能只创建表,对吗?如何访问我在函数中创建和存储值的数组?任何帮助表示赞赏!

4

2 回答 2

1

实际上,您甚至可以使用函数创建表,但为了简化,让我们使用您已经存在的表。

工作 JSFIDDLE 演示:http: //jsfiddle.net/KEjpe/

JS:

var myjsonobject = { 
                    0: { 0: "row 1 cell 1", 1 : "row 1 cell 2"},
                    1: { 0: "row 2 cell 1", 1 : "row 2 cell 2"} 
                   }

var table = document.getElementsByTagName("table")[0];

var trs = table.getElementsByTagName("tr");

for(i=0;i<trs.length;i++)
{
   var tds = trs[i].getElementsByTagName("td");

   for(j=0;j<tds.length;j++)
   {
      tds[j].innerHTML = myjsonobject[i][j]
   }
}

HTML:

<table border="1">
<tr>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
</table>
于 2013-01-07T03:02:48.423 回答
1

首先,您需要一个函数来将 tr 和 td 附加到您的表中。

function addContentTo(table, myArr) {
    var frag = document.createDocumentFragment();
    var tr = document.createElement('tr');

    for (var col in myArr) {
        var td = document.createElement('td');
        td.innetHTML = col;
        tr.appendChild(td);
    }

    frag.appendChild(tr);
    table.appendChild(frag);
}

现在你可以朗姆你的行数组来填充你的表:

var table = document.getElementById('mytable');
for(var line in myArray) {
    addContentTo(table, line);
}

我假设你的数组是这样的:

myArray = [
    ['row 1, cell 1', 'row 1, cell 2'],
    ['row 2, cell 1', 'row 2, cell 2']
];

然后您的表格将被动态构建,但在我的代码案例中,您的表格必须具有 id 'mytable':

<table id="mytable"></table>

这就是所有人。

于 2013-01-07T03:09:37.617 回答