0

我正在使用此代码将列和行添加到表中。

现在我正在尝试为每个生成的单元格添加一个 id,就像在 excel 表中一样。

对于行,我分配 0、1、2 等,对于列,我分配 a、b、c 等,因此第一个单元格的 id 为0aora0或类似的东西。

更新:这是我的实际代码

var table = document.getElementById("excelTable");
var input = table.getElementsByTagName("input");
var globalLen = input.length;
var arr = [], arrStr = [];
var numId = null, modStr = null, re = null, var1 = null, var2 = null, total = null, sign = null;

function createCell(cell, r, c) {
    cell.innerHTML = "<input id='td" + r + c+ "' type='text' onfocus='doEdit(this.id);' onblur='doUpdate(this.value, this.id);' />";
}

function addRowId(tbl) {
    return tbl.rows.length;
}

function addColId(tbl) {
    for (i = 0; i < tbl.rows.length; i++) {
        return tbl.rows[i].cells.length;
    }
}

function appendRow(n) {
    for (; n > 0; n--) {
        var tbl = document.getElementById('excelTable'),
            row = tbl.insertRow(tbl.rows.length),
            i;
        for (i = 0; i < tbl.rows[0].cells.length; i++) {
            createCell(row.insertCell(i), addRowId(tbl), addColId(tbl));
        }
    }
}

function appendColumn(n) {
    for (; n > 0; n--) {
        var tbl = document.getElementById('excelTable'),
            i;
        for (i = 0; i < tbl.rows.length; i++) {
            createCell(tbl.rows[i].insertCell(tbl.rows[i].cells.length), addRowId(tbl), addColId(tbl));
        }
    }
}

我在为每个单元格分配唯一 ID 时遇到问题。ID 必须包含行号中的一位数字(1、2、3 等)和列中的一位数字或字母(1、2、3 等或 a、b、c 等)

所以最后它看起来像 11、12 等或 1a、1b 等。

ID 将分配给input此单元格中的一个。

我的目标是获取单元格(行和列)的索引并将这些索引分配给 ID。

4

2 回答 2

1

您可以使用yourCell.setAttribute('id', 'a0');Just generate the IDs from your loop-variables。

于 2013-08-01T12:32:47.347 回答
0

你可以试试yourcell.setAttribute("id", "uniqueIdentifier");

因为uniqueidentifier您可以获得rows[index]column[index]哪个将为您提供该行和列的值。

于 2013-08-01T12:33:04.317 回答