如何在JavaScript中定位迭代对象的子元素?
在本例中,我只想针对具有thead标记的表 我尝试使用JavaScript或jQuery连接或搜索,以速度更快的为准 e、 g如何在JavaScript中定位迭代对象的子元素?,javascript,jquery,foreach,each,Javascript,Jquery,Foreach,Each,在本例中,我只想针对具有thead标记的表 我尝试使用JavaScript或jQuery连接或搜索,以速度更快的为准 e、 gthead=DT[i].儿童('thead') 函数go(){ var i=0, DT=document.getElementsByClassName('DT'); 对于(i;i
thead=DT[i].儿童('thead')代码>
函数go(){
var i=0,
DT=document.getElementsByClassName('DT');
对于(i;i
th
运输署
泰德
运输署
您不需要任何循环,可以使用jQuery的:has()
选择器根据元素是否包含指定的子元素来检索元素,如下所示:
函数go(){
$('.DT').has('thead').addClass('foo');
}
go()代码>
.foo{border:1px solid#C00;}
th
运输署
泰德
运输署
您可以使用querySelector
检查嵌套的thead
是否存在
if (x.querySelector("thead")) {
//do stuff to this table
}
正如你所知道的,你会这样做来完成你最初的尝试:
if ($(x).find("thead").length) {
//do stuff to this table
}
这只是为了展示如何从给定上下文执行DOM选择。
$('.dtthead').parent().addClass('foo')代码>这也会做同样的事情,不是吗?是的,虽然稍微详细一点,但这让我走上了正确的轨道。我使用了$('.DT')。根据jQuery的建议,has('thead')
。很高兴你把它整理好了。老实说,我以前没有在文件中看到过这样的警告。我将更新答案,以防将来有访客访问此问题。虽然已
似乎是一条可行之路,但我在使用循环时遇到了一些问题,您的查找
解决方案对我来说很有效。谢谢