我有一个表,与一些嵌套表(这是输出但DOTNET控制我不能做任何事情)获取直接的儿童使用jQuery
我要的是把所有那些直接孩子,但这样的行远不如我想象的那样工作。
我有一个基本的设置,只是需要的所有行,还从嵌套表的那些,我评论了其他几个人我修整未取得理想的结果
我想要什么,它移动完整的行,即使该行有一个嵌套表,它不指望在片功能,在该表中的行
您可以在jsfiddle
看到我设置任何帮助,将不胜感激
我有一个表,与一些嵌套表(这是输出但DOTNET控制我不能做任何事情)获取直接的儿童使用jQuery
我要的是把所有那些直接孩子,但这样的行远不如我想象的那样工作。
我有一个基本的设置,只是需要的所有行,还从嵌套表的那些,我评论了其他几个人我修整未取得理想的结果
我想要什么,它移动完整的行,即使该行有一个嵌套表,它不指望在片功能,在该表中的行
您可以在jsfiddle
看到我设置任何帮助,将不胜感激
您可以使用在所有情况下:not()
,或child selector (>
),如果你知道你的标记条件:
$('#tblPropertyDetail tr:not(tr tr)').slice(0, 40).appendTo(".one");
You can test it here。另一种方法是:
$('#tblPropertyDetail > tr').slice(0, 40).appendTo(".one");
然而,这可能会或可能无法正常工作取决于你的DOCTYPE,这取决于是否<tbody>
元素它在那里为你添加(例如,在XHTML推断)。为了自己的安全添加<tbody>
和做到这一点:
$('#tblPropertyDetail > tbody > tr').slice(0, 40).appendTo(".one");
$('#tableID > * > tr, #tableID > tr')
只记得*因为的JavaScript浏览器会自动将TBODY元素。
编辑:
更正了自动添加tbody元素的错误。
JavaScript不会自动添加任何东西,它是DOCTYPE决定它是否由解析器推断。 – 2010-11-05 18:23:08
我知道我的答案有点晚,jQuery已经发展了,但现在有更好的方法来做,只需调用children()! :)
$('#tblPropertyDetail').children().appendTo(".one");
您甚至可以将选择器添加到children()
方法。
谢谢我以为我有用$('#tblPropertyDetail tr:not(:has(tr))'覆盖的顶级解决方案,但你的工作很完美 – nokiko 2010-11-05 18:13:43