如何使用javascript从列表中选择元素并将其放入数组
我想挑选ul标签中的所有元素,并使用javascript将其推送到一个数组中。我应该如何做如何使用javascript从列表中选择元素并将其放入数组,javascript,jquery,html,Javascript,Jquery,Html,我想挑选ul标签中的所有元素,并使用javascript将其推送到一个数组中。我应该如何做 <ul id="sortable1" class="connectedSortable"> <li class="ui-state-default">Item 1</li> <li class="ui-state-default">Item 2</li> <li class="ui-state-default">Item 3</
<ul id="sortable1" class="connectedSortable">
<li class="ui-state-default">Item 1</li>
<li class="ui-state-default">Item 2</li>
<li class="ui-state-default">Item 3</li>
<li class="ui-state-default">Item 4</li>
<li class="ui-state-default">Item 5</li>
</ul>
第1项
第2项
第3项
第4项
第5项
使用返回li对象的类似数组的对象。jQuery上的每个()函数将帮助您实现它
尝试以下方法:
var array = [];
$( "li" ).each(function() {
array.push($(this).text());
});
对于.each()
引用,根据您的类名单击,看起来您正在使用jQuery
var myItems = $("#sortable1").children();
或者,如果你只想要文本
var myItems = [];
$("#sortable1").each(function() {
var $this = $(this);
myItems.push($this.text());
});
JavaScript:
var sortable1=document.getElementById(“sortable1”).children;
var数组=新数组();
对于(i=0;i在数组中填充什么,元素还是文本。类名表示您正在使用jQuery,但没有用jQuery标记。您听说过DOM吗?似乎您会从一个教程中受益最多:只包含文本。是的,我使用jQuery来解决此问题。但是对于上述问题,即使是JS也可以。请告诉我们在你问一个新问题之前先搜索。实际上,它返回一个HTMLCollection,它不是一个数组,而是一个类似object.var x[]=document.getElementById('sortable1')的数组.children;如果我有多个s,它将选择所有- s,然后!@user:然后只选择您想要的lis!您必须始终调整答案以适合您的特定用例。然后使用
$(“li.ui状态默认值”)
。您从一开始就没有指定过该条件谢谢。我尝试过并为我工作过
var myItems = [];
$("#sortable1").each(function() {
var $this = $(this);
myItems.push($this.text());
});
var sortable1 = document.getElementById("sortable1").children;
var array = new Array();
for(i=0; i<sortable1.length; i++) {
array.push(sortable1[i].innerHTML);
}
var lis = $("#sortable1").children();
var array = new Array();
for(i=0; i<lis.length; i++) {
array.push($(lis[i]).text());
}