0

td内の要素をコピーし、jqueryを使用してそれ自体(td)に追加したいと思います。次のコードでは、ボタンがクリックされるたびに、td内のすべての要素がコピーされます。ボタンがクリックされるたびに元の要素のみがコピーされるようにするにはどうすればよいですか?

$('.row-add').live("click", function () {
      var price = $(this).closest('td').html()
      $(this).closest("td").append(price);
    });

これがhtmlです

<td>
                $<input class="price" value="50"/>
                /
                <select>
                  <option>Second</option>
                  <option>Minute</option>
                  <option>Hour</option>
                  <option>Day</option>
                  <option>Week</option>
                  <option>Biweek</option>
                  <option selected="selected">Month</option>
                </select>
                /
                 <select>
                  <option>Day</option>
                  <option>Week</option>
                  <option>Biweek</option>
                  <option selected="selected">Month</option>
                  <option>Quarter</option>
                  <option>Year</option>
                </select>
                <span class="delete-td"></span>
                <span class="row-add"></span>
</td>
4

2 に答える 2

0

その機能は私にとって素晴らしい働きをしています。私はhtmlとして単純なテーブルを使用しています:

<table>
    <tr>
        <td class="row-add">Click Me</td>
        <td>Not Me</td>
    </tr>
</table>

私はあなたの関数を逐語的にコピーしました。DOMがロードされた後にコードが実行されていることを確認するだけで、問題はありません。

于 2012-09-26T15:49:38.720 に答える
0

ラップしない限り、最初のコンテンツを追加されたデータから分離する方法はありません(複製されたtdに追加していると仮定します)。元のデータの周りにクラスを持つスパンを配置し、マルチパートセレクターを使用して元のデータのみをコピーすることをお勧めします。例:

var price = $(this).closest('td span .original').html()

于 2012-09-26T15:53:05.320 に答える