JQuery – 设置TBODY

我有一个表定义如下:

Date First Name Last Name

我试图通过JavaScript在运行时动态填充’myTable’。 为了适应这一点,我使用的是JQuery。 我想在’myTable’中的tbody元素中写一些HTML。 但是,我在理解如何使用选择器执行此操作时遇到问题。 我知道我可以使用“myTable”:

 $("#myTable") 

我知道我可以使用以下命令设置myTable的HTML:

 $("#myTable").html(someHtmlString); 

但是,它设置整个表的HTML。 实际上,我只想在’myTable’的TBODY中设置HTML。 我如何使用JQuery执行此操作?

谢谢!

你会用:

 $("#myTable > tbody"); 

它选择了作为#myTable的直接后代的tbody元素。

或者,您可以使用:

 $('tbody', '#myTable'); 

它在#myTable的上下文中查找所有tbody元素。

在jQuery中,通常有几种方法可以实现您的需求。

另一种方式,是:

 $('#myTable').children('tbody'); 

这与我上面的第一个解决方案实际上是一样的。

jQuery有很棒的文档:

选择器: http //api.jquery.com/category/selectors/

遍历: http //api.jquery.com/category/traversing/

如果要添加行,请查找tbody元素并使用append,如果要替换所有行,则使用html。

 $('#myTable tbody').append(someRowHtml); $('#myTable tbody').html(someRowHtml); 

请注意,如果你有多个tbody元素,你还需要使用:first selector(或者nth-child – 不要忘记,虽然它是从零开始的,你有一个thead元素)来获取纠正一个。

 $('#myTable tbody:first').append(...); 
 $("#myTable tbody").html(someHtmlString); 

尝试使用$("#myTable > tbody").html("");

尝试:

 $("#myTable tbody") 

给你的tbody一个id,然后用你的表做同样的事情

你可以这样做:

 $("#myTable tbody").html(html_here); 
 $('#myTable tbody').append('foobar');