0

我想更改<tr>要克隆的元素中的第一个 TD。

.deals_options我在最后一个tr 元素之后克隆并插入

            var $orig = $('.deals_options:first');
            for (var i = 0; i < Math.abs(amount - selectCount); i++) {
                $orig.clone().insertAfter('.deals_options:last');
            }

工作正常,但现在在这个 tr 元素.deals_options中,我想在第一个元素中添加 html <td>

如何在我插入的克隆元素中的第一个 td 中插入文本?

4

2 回答 2

1

找到克隆元素中的第一个 td 并向其添加一些文本:

var $orig = $('.deals_options:first');
for (var i = 0; i < Math.abs(amount - selectCount); i++) {
     var clone = $orig.clone();
     clone.find('td:first').text("New Text");
     clone.insertAfter('.deals_options:last');
}

http://jsfiddle.net/Kgrhv/

于 2012-12-14T15:51:38.603 回答
1

你有几个选择。如果你真的很喜欢单行(为了清楚起见,这里分成多行):

$orig.clone()
     .insertAfter('.deals_options:last')
     .find('td')
     .first()
     .html("new content");

实例| 来源

或者,如果您真的非常想在将新内容添加到表格之前对其进行设置:

$orig.clone()
     .find('td:first')
     .html("new content")
     .end()
     .insertAfter('.deals_options:last');

实例| 来源

end是 jQuery 比较晦涩的特性之一。

我自己并不那么喜欢单线,所以对我来说:

var clone;

// ...then in the loop...
clone = $orig.clone();
clone.find('td').first().html("new content");
clone.insertAfter('.deals_options:last');

实例| 来源

于 2012-12-14T15:52:17.047 回答