我正在尝试使用after()<table>之后放置更多DOM数据($('tr'));我注意到新元素的宽度更改了tr的第一个td元素的宽度。我该怎么做才能防止这种情况?

$('#table tr').click(function(){
    $(this).after(table);
    $('#data').slideDown("slow");
});


http://jsfiddle.net/HZLLb/1/

最佳答案

如评论所述,您不能在该位置使用table元素,并且不应重复id。但是,您可以具有多个tbody元素,以及具有相同类的多个元素,这很可能是您要使用的解决方案:

var table = '<tbody class="data" style="display:none;"><tr><td>Test</td><td>Test</td>            <td>Test</td></tr></tbody>';

$('#table').on('click', 'tr', function(){
  $(this).closest('tbody').after(table);
  $('.data').last().slideDown("slow");
});


http://jsfiddle.net/HZLLb/3/

关于javascript - 使用jQuery将DOM数据追加到一行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24620563/

10-09 15:40
查看更多