0

テーブルの各セルに divtag を動的に作成して、後で他のものを入力できるようにしようとしています。しかし、私がこれをやろうとしたとき:

newhtml+="<div id ='" + (j) +"'><td class = 'unselected'>&nbsp?&nbsp</td></div>"

後でそれを使用すると、作成したことがないかのように動作しました。

したがって、stackoverflow を参照した後、次のコード行を使用して div タグを動的に作成する必要があることがわかりました。

var divtag = document.createElement('div');

しかし、私の質問は、それを js コードにどのように実装するのですか?

後で参照するために divtags を作成するコードのセクションを次に示します。

newhtml+="<tr>";
for (var j = 0; j < $tblcols; j++){
newhtml+="<div id ='" + (j) +"'><td class = 'unselected'>&nbsp?&nbsp</td></div>";

そして、これを使用するセクションは次のとおりです。

divtag = document.getElementById("'" + (++$counter2) + "'");
newhtml +="<td class = 'solved'><img src ='sc2units/" + $counter2 + ".jpg'></td>";
divtag.innerHTML = newhtml;

各セクションは、出力が必要なデータの配列全体を通過するネストされた for ループです。

編集:配列内のデータでセルを埋める簡単な方法があれば、喜んでお知らせします。

4

2 に答える 2

1

テーブル、セットアップ、または正確なニーズについてはわかりません....しかし、セルを作成した後、特定のテーブルセルにコンテンツを提供したいと考えています。それらに名前を付けることは正しい考えですが、<td>s を s でラップすることはできない<div>ため、次善の策は単に <td>自体に名前を付けることです。

2 番目のループ内にコンテンツを追加することもできますが、これで実行します。

HTML

<table id="myTable">
    <tr>
        <td>[ content ]</td>
    </tr>
    <tr>
        <td>[ content ]</td>
        <td>[ content ]</td>
    </tr>
    [ etc ]
</table>

JavaScript

var tbl = document.getElementById("myTable"),
    rows = tbl.getElementsByTagName("tr");

// loop all rows
for (var r = 0; r < rows.length; r++){

    // loop all cols within the row
    var cols = rows[r].getElementsByTagName("td");
    for (var c = 0; c < cols.length; c++){
        cols[c].id = "row-" + r + "_col-" + c;
    }
}

// usage
document.getElementById("row-1_col-1").innerHTML = "JS POWER";

http://jsfiddle.net/daCrosby/tJYNM/

于 2013-05-26T00:49:31.213 に答える
0

要素を個別に作成し、後で整理して、一方を他方の中に挿入することができます。何かのようなもの:

var mydiv = document.createElement("DIV");
var mytd = document.createElement("TD");
mytd.innerHTML = "some basic text";
mydiv.appendChild(mytd);  // insert the TD inside the DIV
document.body.appendChild(mydiv);  // insert the DIV in the document's body

TD を DIV 内に配置することの意味がわかりません...

于 2013-05-25T23:36:42.027 に答える