0

このコードを使用して、列と行をテーブルに追加しています。

Excelテーブルのように、生成されたすべてのセルにIDを追加しようとしています。

行には 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 桁 (1、2、3 など) と、列の 1 桁または文字 (1、2、3 など、または a、b、c など) が含まれている必要があります。

したがって、最終的には 11、12 など、または 1a、1b などのようになります。

inputIDは、このセルにあるに割り当てられます。

私の目標は、セル (行と列) のインデックスを取得し、それらのインデックスを ID に割り当てることです。

4

2 に答える 2

1

yourCell.setAttribute('id', 'a0');ループ変数から ID を生成するだけで使用できます。

于 2013-08-01T12:32:47.347 に答える
0

あなたが試すことができますyourcell.setAttribute("id", "uniqueIdentifier");

その行と列の値をuniqueidentifier取得できるためです。rows[index]column[index]

于 2013-08-01T12:33:04.317 に答える