2010-11-16 18 views
47

Sınıfı ya myClass1 OR myClass2 olan bir öğenin içinde metin bulmaya çalışıyorum.Sınıf 1 veya sınıf 2 olan öğeyi bulun.

var myText = $(this).find('.myClass1:first').text(); 

Bu çalışıyor ancak (benim eleman sadece bahsettiğim bu 2 arasında bir sınıf var olacaktır) Bir 2 sınıfları için nasıl kontrol edebileceklerini/eğer emin değilim.

Yardımlarınız için teşekkürler!

+2

Sadece bir sonuç istiyor musunuz (* ilk bulunan *)? ya da her birinin ilki (* iki sonuç *)? –

cevap

63

ilk bulunmak birini (ama sadece bir) istiyorsanız

kullanmak her türünün ilk istiyorsanız
var myText = $(this).find('.myClass1,.myClass2').eq(0).text(); 

(iki sonuç) daha sonra @jelbourn tarafından sağlanan cevap bak.

+2

bu tam olarak ne olduğumu oldu, ama gelecekteki ihtiyaçlar için diğer önerileri de dikkate alacaktır :) herkese teşekkürler – ale

24

Derse içeren tüm unsurları içeren bir liste oluşturmak için virgül ile seçicileri ayırabilirsiniz (ya da her ikisi birlikte):

var elements = $(this).find('.myclass1:first, .myclass2:first'); 
+0

öneri için teşekkürler :) – ale

4

Bir if ifadesi kullanın ve jQuery hasClass() fonksiyonu:

http://api.jquery.com/hasClass/

Muhtemelen şöyle bir şey olurdu:

if($(this).hasClass('myClass1') || $(this).hasClass('myClass2')) { 
    myText = $(this).text(); 
} else { 
    myText = null; 
} 
İlgili konular