2012-09-27 15 views
5

Birisi bana burada yapmaya çalıştığım şeyin sözdizimi konusunda yardımcı olabilir mi?jQuery seçici "ve" ve "veya" ile

jQuery('(div[data-positiontype="3"]) && (div[data-positiontitle*="test"] || div[data-positiondesc*='test'])') 

Temelde Belirli bir "veri positiontype" ayrıntısını ve ya "veri positiontitle" özelliğine veya "veri-positiondesc" özelliğinde bir belirteç olan tüm div'leri seçmek için yeteneği gerekir.

+1

'$ ('div [ data-positiontype = "3"] '). filter (' [data-pozitiontitle * = "test"], [data-pozitiondesc * = "test"] ') ' – zzzzBov

+0

Ama gerçekten, gözden geçirmeniz gerekenler [seçiciler nasıl çalışır? ] (http://api.jquery.com/category/selectors/) – zzzzBov

+0

jQuery seçicileri çoğu durumda css seçiciyle aynıdır. Bunu css'de nasıl yaparsın? –

cevap

10
$('div[data-positiontype="3"]').filter('[data-positiontitle*="test"], [data-positiondesc*="test"]'). 

veya basit:

$('div[data-positiontype="3"][data-positiontitle*="test"], div[data-positiontype="3"][data-positiondesc*="test"]'). 
+0

.filter() İnanılmaz! Tam da aradığım şey! – Kyle

2

Hem maçları unsurları bulmak için birlikte seçiciler yığını ve seçicileri arasında , bağdaştırıcının kullanın:

jQuery('div[data-positiontype="3"][data-positiontitle*="test"],div[data-positiontype="3"][data-positiondesc*="test"]')