jQuery查找并列出特定DIV中UL内的所有LI元素

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery查找并列出特定DIV中UL内的所有LI元素相关的知识,希望对你有一定的参考价值。

我有3列UL,每个都是一个动态UL容器,可以容纳0到9个LI容器(最终更多)。我的所有LI元素都有一个属性“rel”,我试图最终找到该属性,并将其用于父DIV中所有LI元素的其他内容。我最终想要找到更多基于每个但不是至少的rel ..任何想法我如何用jQuery实现这一点?例:

<ul id="column1">
   <li rel="1">Info</li>
   <li rel="2">Info</li>
   <li rel="3">Info</li>
</ul>
<ul id="column2">
   <li rel="4">Info</li>
   <li rel="5">Info</li>
   <li rel="6">Info</li>
</ul>
<ul id="column3">
   <li rel="7">Info</li>
   <li rel="8">Info</li>
   <li rel="9">Info</li>
</ul>

这些元素也可以排序。因此,当我得到它们的列表时,我还要按照从每列的顶部到底部找到的顺序保留它们。

我试过find(),parent()和类似的东西,也许我接近它错了。但它仍然值得一提,以帮助提出一个想法

答案

你在想这样的事吗?

$('ul li').each(function(i)
{
   $(this).attr('rel'); // This is your rel value
});
另一答案
var column1RelArray = [];
$('#column1 li').each(function(){
    column1RelArray.push($(this).attr('rel'));
});

或者fp风格

var column1RelArray = $('#column1 li').map(function(){ 
    return $(this).attr('rel'); 
});
另一答案
$('li[rel=7]').siblings().andSelf();

// or:

$('li[rel=7]').parent().children();

现在你添加了那个解释你想“形成每列rels数组”的评论,你应该这样做:

var rels = [];

$('ul').each(function() {
    var localRels = [];

    $(this).find('li').each(function(){
        localRels.push( $(this).attr('rel') );
    });

    rels.push(localRels);
});
另一答案

html

<ul class="answerList" id="oneAnswer">
    <li class="answer" value="false">info1</li>
    <li class="answer" value="false">info2</li>
    <li class="answer" value="false">info3</li>
</ul>   

获取索引,文本,值js

    $('#oneAnswer li').each(function (i) {

        var index = $(this).index();
        var text = $(this).text();
        var value = $(this).attr('value');
        alert('Index is: ' + index + ' and text is ' + text + ' and Value ' + value);
    });

以上是关于jQuery查找并列出特定DIV中UL内的所有LI元素的主要内容,如果未能解决你的问题,请参考以下文章

jquery中删除指定ul中除第一个li外的所有li的代码?

如何用jquery获得每个ul下最后一个li

jquery选择div下的ul下的li下的a

讨论班jQuery学习

jquery 源码解析 节点遍历

jquery如何获取ul中第一个li和最后一个li