[英]multiple selectors with document.querySelectorAll
Hot to get multiple selectors values using document.querySelectorAll
? 热门使用
document.querySelectorAll
获得多个选择器值?
I need to get URL inside selectors. 我需要在选择器内获取URL。
<div class".myClass"><a href="link1.html"></a>
<div class".myClass"><a href="link2.html"></a>
<div class".myClass"><a href="link3.html"></a>
I'm trying to use the follow but it is not working: 我正在尝试使用以下方法,但无法正常工作:
var x = document.querySelectorAll(".myClass");
for(var i = 0; i < x.length; i++) {
console.log (x[i].childNodes[1].href);
}
The syntax for assigning class or any atrribute to elements in Html is this: 在HTML中为元素分配类或任何属性的语法是:
<div class="myClass">
You don't need a .
您不需要
.
to assign a class name to an element but need it in case of accessing like you did above. 给元素分配一个类名,但是像上面那样访问时需要它。
You have a few issues in your HTML: 您的HTML中有一些问题:
the class should be changed from: <div class".myClass">
to <div class="myClass">
该类应从:
<div class".myClass">
更改为<div class="myClass">
you forgot to close the <div>
with </div>
你忘了关闭
<div>
与</div>
if you use document.querySelectorAll() you can use forEach() to iterate over all the elements. 如果使用document.querySelectorAll() ,则可以使用forEach()遍历所有元素。
var x = document.querySelectorAll(".myClass"); x.forEach(function(element, index){ console.log(index + ': -> ' + element.children[0].href); });
<div class="myClass"><a href="link1.html"></a></div> <div class="myClass"><a href="link2.html"></a></div> <div class="myClass"><a href="link3.html"></a></div>
if you don't want to use forEach() (you still need to change point 1 and 2) the code will look like so: 如果您不想使用forEach()(仍然需要更改第1点和第2点),则代码将如下所示:
var x = document.querySelectorAll(".myClass"); for(var i=0; i < x.length; i++){ console.log(i + ': -> ' + x[i].children[0].href); }
<div class="myClass"><a href="link1.html"></a></div> <div class="myClass"><a href="link2.html"></a></div> <div class="myClass"><a href="link3.html"></a></div>
Append string to url : 将字符串追加到url :
var x = document.querySelectorAll(".myClass"); for(var i=0; i < x.length; i++){ x[i].children[0].href = x[i].children[0].href + '&item1=yes'; console.log(i + ': -> ' + x[i].children[0].href); }
<div class="myClass"><a href="link1.html"></a></div> <div class="myClass"><a href="link2.html"></a></div> <div class="myClass"><a href="link3.html"></a></div>
class="myClass"
). class="myClass"
)。 x[i].childNodes[0].href
x[i].childNodes[0].href
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.