jquery与find分离
为什么这不起作用jquery与find分离,jquery,html,Jquery,Html,为什么这不起作用 $rows = $("tbody").detach().find("tr"); 但这是真的吗 $rows = $("tbody").find("tr").detach(); 我认为第二种方法得到了“tr”的集合,并使用了某种类型的。每个。来分离它们。我认为如果有一种方法可以让它工作的话,将整个身体分离一次,然后从中获取tr…?第一个语句在$(“tbody”)上进行去跟踪,第二个语句在表的行上进行去跟踪。$rows实际上具有相同的值,但是,在第一个示例中,DOM中缺少tbod
$rows = $("tbody").detach().find("tr");
但这是真的吗
$rows = $("tbody").find("tr").detach();
我认为第二种方法得到了“tr”的集合,并使用了某种类型的。每个。来分离它们。我认为如果有一种方法可以让它工作的话,将整个身体分离一次,然后从中获取tr…?第一个语句在$(“tbody”)上进行去跟踪,第二个语句在表的行上进行去跟踪。
$rows
实际上具有相同的值,但是,在第一个示例中,DOM中缺少tbody
标记,因此需要将其重新添加
还请注意
$rows=$(“tbody”).detach().find(“tr”)代码>(约为100ms以分离和存储阵列中的500个tr
元素)
其效率明显高于:
$rows=$(“tbody”).find(“tr”).detach()
(大约170ms以分离并在数组中存储500个元素)这些片段尝试执行不同的操作。您想做什么,分离tbody或tr元件?第一个片段是搜索已经分离的tbody元素,而不是分离表行。我认为第二个代码片段在您的情况下是正确的。因为我正在分离tbody中的所有tr元素,所以在我的情况下它们略有不同,如果需要的话,我总是可以包装一个。无论如何,我的观点是,$行在这两种情况下应该包含相同的值。为什么不呢?当我测试它时,我在两种情况下得到相同的结果。您的标记看起来像什么?$行的两个版本有何不同?您是否在干净的文档上运行两个版本的代码(而不是在上运行,然后在结果上运行另一个版本)?嗯,好吧,这很奇怪,我使用了$rows.each。我所做的只是在上面的两个语句之间切换,得到了不同的结果。在一组分离的节点上使用.each()
是否有问题?是的,我知道,但我的问题是为什么$rows的值在每种情况下都不同?