按名称属性javascript选择嵌套元素(无jquery)
所以我有这个HTML代码,我需要根据元素的name属性选择元素。问题是我有多个元素具有相同的结构,我需要用循环来抛出它们按名称属性javascript选择嵌套元素(无jquery),javascript,html,Javascript,Html,所以我有这个HTML代码,我需要根据元素的name属性选择元素。问题是我有多个元素具有相同的结构,我需要用循环来抛出它们 <div class="res"> <h4 name="title">title</h4> <span name="span1"></span> <span name="span2"></span> <p name="p1"></p>
<div class="res">
<h4 name="title">title</h4>
<span name="span1"></span>
<span name="span2"></span>
<p name="p1"></p>
<p name="p2"></p>
</div>
标题
我需要按名称选择.res div元素中的每一个元素(或者如果有更好的解决方案,我想告诉您)。您可以在纯javascript中使用DOM element.children属性
var children = res.children;
for (var i = 0; i < children.length; i++) {
var child = children[i];
// Do stuff
}
var children=res.children;
对于(变量i=0;i
或者,如果不想硬编码名称,可以循环使用元素。您可以使用
.querySelector()
如:
document.querySelector('[name="xxxxxx"]');
var containers = document.querySelectorAll('.res');
for( var i = 0; i < containers.length; i++) {
console.log( containers[i].querySelector('[name="title"]').textContent );
}
如果您想在所有res
容器中循环,可以使用.querySelctorAll()
如下:
document.querySelector('[name="xxxxxx"]');
var containers = document.querySelectorAll('.res');
for( var i = 0; i < containers.length; i++) {
console.log( containers[i].querySelector('[name="title"]').textContent );
}
var containers=document.querySelectorAll('.res');
对于(var i=0;i
您可以使用querySelectorAll
和内部循环处理每个元素
const elements=document.queryselectoral(“.res>*”);
elements.forEach(element=>{
控制台日志(元素);
});代码>
标题
我试图使用document.getElementsByClassName(“res”)[0]来访问它。title因为我认为它会像添加完整路径一样工作,但忘记了此路径用于属性,所以我在谷歌上搜索了一下,没有发现任何有用的内容。很明显,我的方法是错误的,我不知道该用什么。我使用了多个div,所以我需要分别抛出每个div。我不知道children函数,谢谢你提供的新信息:D