-1

次のように JavaScript でテーブルを既に取得しているとします。

 var isert = inn.getElementsByTagName("table");

そして、私は次のような構造を持っています:

<table width="100%">
    <tbody>
        <tr>
            <td><div class="extra"></div>
            </td>
        </tr>
        <tr>
            <td><div class="extra"></div>
            </td>
        </tr>
        <tr>
            <td><div class="extra"></div>
            </td>
        </tr>
    </tbody>
</table>

ここで、抽出されたコードの結果が次のようになるように、外部のテーブル構造を削除してコンテンツのみを保持するにはどうすればよいですか。

<div class="extra"></div>
<div class="extra"></div>
<div class="extra"></div>

ありがとう!

4

1 に答える 1

1

私はお勧めします:

function removeTo(from, what) {
    if (!from || !what) {
        return false;
    }
    else {
        els = from.getElementsByTagName(what);
        while (els[0]) {
            from.parentNode.insertBefore(els[0],from);
        }
        from.parentNode.removeChild(from);
    }
}

removeTo(document.getElementsByTagName('table')[0], 'div');

JS フィドルのデモ

ちなみに:

var isert = inn.getElementsByTagName("table");

要素への参照を提供するのではなく、変数内のすべての要素tableの nodeList を提供します (それが何であれ)。特定のものに作用するには、作用したい特定のものを指定する必要があります。tableinntable tabledocument.getElementsByTagName('table')[0]

于 2013-06-14T13:49:45.053 に答える