2010-02-02 23 views
15

मैं कई div के कि इस तरह दिखना है:पुनः प्राप्त बच्चे img src (jQuery)

<div><a href="our_work.html?clientid=39"> 
<img src="filestore/data_logos/39.gif" alt="client logo"/> 
</a></div> 

मैं अगर तुम div परत पर क्लिक करें छवि src पाने के लिए कोशिश कर रहा हूँ:

$('#carousel div').click(function(event) { 
    alert($(this).children('img').attr('src')); 
}); 

सतर्क हमेशा वापस, किसी भी विचार के रूप में वापस आता है?

उत्तर

25

इस का उपयोग करें:

$('#carousel div').click(function(event) { 
    alert($(this).find('img').attr('src')); 
}); 

छवियों div के बच्चे नहीं ... वे, <a> जो div का एक बच्चा है के बच्चों रहे हैं एक और स्तर नीचे जाने के लिए की जरूरत है।

+5

+1 - '.children()' केवल ** प्रत्यक्ष वंशज ** लौटाएगा जहां '.find() 'नीचे सभी तत्वों के माध्यम से खोज करेगा; बच्चों, पोते, आदि – gnarf

2

इस प्रयास करें:

$('#carousel div').click(function(event) { 
    alert($('img', this).attr('src')); 
}); 

~ मैट

3

Straight from the horse's mouth, जोर मेरा:

एक jQuery उद्देश्य यह है कि डोम तत्वों का एक सेट का प्रतिनिधित्व करता है को देखते हुए, .children() विधि की अनुमति देता है हमें तत्काल डीओएम पेड़ में इन तत्वों के बच्चों के माध्यम से खोजने के लिए ...

आईएमजी इस तरह घोंसला है: DIV > A > IMG; आपको क्या चाहिए find()children() नहीं है।

संबंधित मुद्दे