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

除非您包装它们(假设您要附加到克隆的 td 中),否则不会有将初始内容与任何附加数据分开的方法。我建议在原始数据周围放置一个带有类的跨度,并使用多部分选择器仅复制原始数据,例如:

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

于 2012-09-26T15:53:05.320 回答
0

该功能对我来说非常有用。我正在使用一个简单的表格作为 html:

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

我已经逐字复制了你的函数。只要确保在 DOM 加载后代码正在运行,你应该没问题。

于 2012-09-26T15:49:38.720 回答