3

jQueryに問題があります。いくつかのコードをコピーする必要があります。追加するのは別の場所です。

私がコピーを取りたいソースは次のとおりです。

<div id="copyCode" style="display: none">
    <div class="ofPagedataTable">
        <tr class="page copy">
            <td class="id"><input type="text" /></td>
            <td class="sprache"><input type="text" /></td>
            <td class="description"><input type="text" /></td>
            <td class="title"><input type="text" /></td>
            <td class="keywords"><input type="text" /></td>
        </tr>
    </div>
</div> 

私が使用しているjQueryは次のようなものです。

$('.addPageToPagedata').click(function(){
    html = $("#copyCode").children(".ofPagedataTable").html();
    target = $('.pagedata tbody').children(':last');    
    $(html).appendTo(target);
    });

これは一種の機能ですが、jQueryは<tr>and <td>Elementsを削除し、次のように追加しています。

<input type="text">
<input type="text">
<input type="text">
<input type="text">
<input type="text">

どうしたらいいのかわからない。誰かがこれを解決する方法を私に提案してくれるといいですね。

ありがとうございました!

4

4 に答える 4

6

jQueryは何も削除しないと思います。あなたのhtmlは無効です。tdここに置くことはできませんtr。ブラウザは、この要素を単独で削除するだけです。

于 2012-11-15T13:40:10.127 に答える
1

trinタグをラップし<table>て、html を有効にしてみてください。

于 2012-11-15T13:41:34.617 に答える
1

マークアップが無効であるため、これは機能しません。タグtr内にのみ配置できます。tableブラウザが無効なマークアップを検出すると、自動的に修正しようとするため、要素trtd要素をすべて削除するだけです。

于 2012-11-15T13:41:51.220 に答える
1

jquery はタグ tbody に基づいて動作していますが、ここにはテーブルがありません。テーブルがなければ、基本的に列と行が存在しない場合でも操作しようとしているため、 tr と td は意味がありません。したがって、それらをテーブルにラップします。そうして初めて、これが機能します。

于 2012-11-15T13:45:45.040 に答える