2010-10-09 10 views
13

मौजूद है मैं एक div जो संभवतः जबाब की एक आईडी के साथ एक हाइपरलिंक हो सकता था की जांच करने के लिए। मैं कैसे जांच सकता हूं कि a[id=reply] मौजूद है या नहीं? मैंने सोचा कि यह ऐसा कुछ हो सकता है लेकिन यह संदेश को अलर्ट करता है भले ही वह हाइपरलिंक मौजूद न हो।कैसे अगर बच्चे

if($('div[chunk_id='+reply_chunk_id+']').children('a[id=reply]')){    
    alert('test'); 
} 

उत्तर

27

चेक चयनकर्ता यह कैसे कई तत्वों का मिलान नहीं हुआ देखने के लिए, इस मामले में की .length:

if($("#reply").length) { 
    //child exists 
} 

हालांकि, यह लगता है कि आप id="reply" है, जो अवैध है के साथ कई तत्व होते हैं। उद्धरण चिह्न नहीं के लिए ओ संपादित: यह करने के लिए

if($("div[chunk_id='"+reply_chunk_id+"'] > a.reply").length){ 
    //child exists 
} 
+0

+1, जीता 26 सेकंड से। – Matchu

+0

@Scarface - आप एक वर्ग के बजाय का उपयोग करना चाहिए ... एक आईडी प्रति पृष्ठ केवल एक बार दिखाई देनी चाहिए। –

+0

बहुत बहुत शुक्रिया हमेशा की तरह निक, इसकी सराहना – Scarface

4

एक और तरीका है: इसके बजाय class="reply" का उपयोग करें और अपने चयनकर्ता इस तरह दिखेगा

if($("div[chunk_id="+reply_chunk_id+"]").children('.reply').length > 0){ 
    // it exists 
} 
+0

यहाँ हम के लिए खोज ** किसी भी ** वर्ग के बच्चे '.reply', जैसे ओपी पूछा, न केवल प्रथम स्तर चयनित जवाब में के रूप में बच्चों। –

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