在寻呼机中创建特定项目的数组并选择特定的类

时间:2011-11-03 13:30:23

标签: jquery arrays pager

我的问题是:如何在寻呼机中创建特定项目数组并选择特定类 这是我的下一个/上一个(寻呼机) html代码:

<div class="item-list">
<ul class="pager" style="display: none;">
<li class="pager-current">1</li>
<li class="pager-item">
<a class="active" title="Go to page 1" href="/challenges?page=1">2</a>
</li>
<li class="pager-next">
<a class="active" title="Go to next page" href="/challenges?page=2">next ›</a>
</li>
<li class="pager-last">
<a class="active" title="Go to last page" href="/challenges?page=3">last »</a>
</li>
</ul>
</div>

寻呼机看起来像这样:&lt; ---前1 2 3 next ---&gt;你可以去哪里。

我想通过所有页面1 - 100循环。

选择每个页面,获取内容并使用<div class="items">创建所有元素的数组,但仅限于包含名为<div id="allowed"></div>

的类的元素

页面内容:

<div class="wrapper">
  <div class="items">
    <div class="title"></div>
    <div class="body"></div>
    <div class="link"></div>
    <div class="allowed"></div>
  </div>
</div>
 <div class="wrapper">
  <div class="items">
    <div class="title"></div>
    <div class="body"></div>
    <div class="link"></div>

  </div>
</div>

现在是允许类的元素只插入到数组中,而另一个元素被忽略。

2 个答案:

答案 0 :(得分:0)

这是如何使用包含具有允许类的元素的子项的数组。这是你在找什么?

var $items = $("div.items");
var yourArray;

$.each($items,function(){
   if($(this).children(".allowed").length){
       yourArray.push($(this));
   }  
});

答案 1 :(得分:0)

您可以使用jQuery.fn.has()根据jQuery对象的内容过滤掉jQuery对象:

$('.items') // <-- all items
  .has('div.allowed') // <-- only the items with a <div class="allowed" />

或将它放在初始选择器中,如下所示:

$('.items:has(div.allowed)');