[英]How to use foreach function for list tag in vanilla javascript
I want to use for each function for getting all li
elements in an array using core javascript 我想为每个函数使用核心javascript获取数组中的所有
li
元素
var li_arr = []
$('li').each(function(){
li_arr.push($(this).attr("id"));
})
this is the code i want to convert 这是我要转换的代码
You can use querySelectorAll
method to get all li elements, convert it to an array using spread syntax and finally use Array#map
method to generate id array. 您可以使用
querySelectorAll
方法获取所有li元素,使用传播语法将其转换为数组,最后使用Array#map
方法生成id数组。
let li_arr = [...document.querySelectorAll('li')].map(ele => ele.id)
let li_arr = [...document.querySelectorAll('li')].map(ele => ele.id) console.log(li_arr);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <ul> <li id="1">Item 1</li> <li id="2">Item 2</li> <li id="3">Item 3</li> </ul>
use document.querySelectorAll('li')
. 使用
document.querySelectorAll('li')
。
const lis = document.querySelectorAll('li'); lis.forEach((li) => { console.log(li.id); });
<li id="1">Item 1</li> <li id="2">Item 2</li> <li id="3">Item 3</li>
If you want to target the lis
of specific ul
. 如果要针对特定
ul
的lis
。
console.log([...document.querySelectorAll('ul#list>li')].map(el => el.id));
<ul id="list"> <li id="1">Item 1</li> <li id="2">Item 2</li> <li id="3">Item 3</li> </ul>
Try like this 这样尝试
<script> var all = document.getElementsByTagName("li"); var li_arr = [] for (var i=0, max=all.length; i < max; i++) { li_arr.push(all[i].getAttribute("id")) } console.log(li_arr) </script>
<ul> <li id="1">Item 1</li> <li id="2">Item 2</li> <li id="3">Item 3</li> <li id="4">Item 4</li> </ul
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.