[英]How to get jquery array from html each list item
<ul>
<li>listitem1</li>
<li>listitem2</li>
<li>listitem13</li>
</ul>
我在HTML文件上有类似的内容。 所以我怎样才能得到我的jQuery文件中的每个列表项作为数组
像这样
var asmg = ["listitem1","listitem2","listitem3"];
使用jQuery.map()
和.get()
处理纯数组。
var asmg = $( "li" ) .map(function() { return $(this).text(); }).get(); console.log(asmg);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <ul> <li>listitem1</li> <li>listitem2</li> <li>listitem13</li> </ul>
尝试使用foreach
循环:
function getArray(ul){ asmg = []; ul.find('li').each(function(){ asmg.push($(this).text()); }); return asmg; } console.log(getArray($('ul')));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <ul> <li>listitem1</li> <li>listitem2</li> <li>listitem13</li> </ul>
尝试跟随
$(function(){ var asmg = []; $("ul > li").each(function(i, li){ asmg.push($(li).text()); }); console.log(asmg); });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <ul> <li>listitem1</li> <li>listitem2</li> <li>listitem13</li> </ul>
您可以使用原始JavaScript实现以下目的:
选择所有li
元素
document.querySelectorAll('li')
将它们拆成数组
[...document.querySelectorAll('li')]
映射此数组以获取每个li
项的文本内容。
[...document.querySelectorAll('li')].map(e => e.textContent)
这是代码:
const li = [...document.querySelectorAll('li')].map(e => e.textContent) console.log(li)
<ul> <li>listitem1</li> <li>listitem2</li> <li>listitem13</li> </ul>
var asmg = Array.from(document.querySelectorAll('li')).map(e => e.textContent);
var asmg = Array.from(document.querySelectorAll('li')).map(e => e.textContent); console.log(asmg);
<ul> <li>listitem1</li> <li>listitem2</li> <li>listitem3</li> </ul>
var varObject = $('ul li').map(function(){
return $(this).text();
}).get();
//converting to array
var aiMsg = $.makeArray(varObject);
该代码对我有用。
感谢所有的答案
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.