2013-12-20 120 views
1

我發現使用jQuery這樣的a標籤集合中:jQuery的,搜索元素與價值屬性匹配的元素

itemsPresent = $('h3.zn-ItemTitle > a'); 

在我的劇本之後,我需要找到匹配的元素中ahref屬性中的特定網址,而不會生成新的jQuery選擇。

我該怎麼做?

+0

稍後您可以在'itemsPresent'上調用['.filter'](http://api.jquery.com/filter/)。 – andyb

回答

1

您可以使用attribute equals選擇:

​​

另外,如果你想保持他們作爲單獨的對象:

var itemsPresent = $('h3.zn-ItemTitle > a'), 
    filteredAnchors = itemsPresent.filter('[href="http://your-url.com"]'); 
1

使用.filter()過濾根據您所需的條件jQuery對象。

嘗試,

itemsPresent.filter(function(){ 
    return $(this).attr('href') == 'something'; 
}) 

或者作爲BenM建議您可以使用,

itemsPresent.filter('[href="something"]'); 
+0

爲什麼不通過'attribute equals'選擇器進行過濾? – BenM

+0

@BenM在這種情況下,我不是100%確定的,但是與直接讀取屬性相比,屬性選擇器通常非常慢。 –

1

可以filter收集

itemsPresent = $('h3.zn-ItemTitle > a'); 

var otherItems1 = itemsPresent.filter('[href="someUrl"]'); 

//or 

var otherItems2 = itemsPresent.filter(function() { 
    return this.href.indexOf('someURL') != -1; 
}); 
1

您可以使用filter

var $a = itemsPresent.filter(function() { 
    return $(this).prop('href') == 'http://your-website.com'; 
});