Jquery列表内部属性子选择

时间:2013-07-09 14:31:19

标签: javascript jquery

我有一个非常简单的问题,其中包括“从jquery元素数组中提取属性值列表”。我在jQuery中不是那么好,所以我可能在这里遗漏了一些非常明显的东西。

假设我有一个由li组成的列表(将使用jquery-ui可选插件选择):

<ol class="selectable" id="LeagueFilterEnum">
    <li>League</li>
    <li>Bronze</li>
    <li class="ui-selected">Gold</li>
    <li class="ui-selected">Platinum</li>
    <li>Master</li>
</ol>

我可以这样选择它们:

var selectedElements = $("#LeagueFilterEnum li.ui-selected");

我正在寻找的是一种方法来检索这些li的属性“innerHtml”中的每一个,如果可能的话,在一行中......就像这样:

var selectedLeagues = $("#LeagueFilterEnum li.ui-selected").selectValues("innerHtml");

用我的例子,这会给我一个数组:['Gold','Platinum']

我可以使用一些.each()魔法,但我想知道是否存在更好的东西。

你有什么想法吗?

非常感谢。

1 个答案:

答案 0 :(得分:3)

你可以做到

var selectedLeagues = $("#LeagueFilterEnum li.ui-selected").map(function(){
    return this.innerHTML
}).get();

注意:

  • 我修复了你的选择器,这是错误的。
  • 最后get是从map
  • 返回的jQuery对象创建一个真实数组