2010-04-27 9 views
5

मैं एक कुछ html ऐसा दिखता है जैसे इसJquery प्रत्येक div के उप बच्चे divs हो और एक सरणी

<div id="main"> 
    <div id="sub_main_1" class="sub_main"> 
     <input type="text" class="sub_name_first" /><br /> 
     <input type="text" class="sub_name_second" /><br /> 
    </div> 
    <div id="sub_main_2" class="sub_main"> 
     <input type="text" class="sub_name_first" /><br /> 
     <input type="text" class="sub_name_second" /><br /> 
    </div> 
</div> 

मैं बाहर निकलने के लिए प्रत्येक sub_main जावास्क्रिप्ट में एक सरणी में जानकारी divs करना चाहते हैं में जानकारी हड़पने। अब तक मेरे पास यह मेरे jQuery कोड

$('#main').find('.sub_main').each( 
      function() { 
       alert('hi'); 
      }); 

अलर्ट केवल एक परीक्षण है कि इसे दो बार "हाय" दिखाना चाहिए। लेकिन यह काम नहीं कर रहा है। मैं यह भी स्पष्ट नहीं हूं कि मैं जावास्क्रिप्ट सरणी में दो इनपुट कैसे स्टोर कर सकता हूं। कोई भी मदद बहुत अच्छी रहेगी! धन्यवाद,

+1

काम नहीं कर रहा - कृपया स्पष्टता से बताएं। आपको क्या लगता है कि यह काम नहीं कर रहा है। क्या आप कोई अलर्ट नहीं देख रहे हैं? – mkoryak

+0

आप 'input' तत्वों, या उनके मूल्यों संग्रहीत करना चाहते हैं? – user113716

+0

काम नहीं कर रहा है कैसे? कोई अलर्ट बिल्कुल नहीं? –

उत्तर

7
var array = $('#main input').map(function() { 
    return $(this).val(); 
}).get(); 

संपादित करें:

ध्यान दें कि यह #main के तहत सभी input तत्वों के मूल्यों को वापस आ जाएगी। आप के रूप में विशिष्ट $('#main input') चयनकर्ता आप की जरूरत के रूप में नहीं तो सब input तत्वों वांछित कर रहे हैं कर सकते हैं।

0

आप डोम लोड होने की प्रतीक्षा कर रहे हैं?

$(document).ready(function(){ 
    $('#main').find('.sub_main').each( 
      function() { 
       alert('hi'); 
    }); 
}); 
+0

मैं वास्तव में इसे जावास्क्रिप्ट फ़ंक्शन में चला रहा हूं, डीओएम को लोड किया गया है और इसे DOM पर लोड होने के बाद पृष्ठ से जावास्क्रिप्ट फ़ंक्शन कहा जाता है। – McNabbToSkins

+0

क्या हुआ अगर हम एक ".sub_main" की विशिष्ट विशेषता प्राप्त करने के लिए ???? –

0

यदि आप अपने 'मुख्य' div के बच्चे divs बाहर निकलने के लिए चाहते हैं, का उपयोग

$('.main>div') 

यह 'मुख्य' के वर्ग के साथ कुछ भी के सभी div बच्चों का चयन करेंगे।

0

क्यों बस कुछ इस तरह सरल भी नहीं:

var firsts = []; 
var seconds = []; 
("#main .sub_main input").each(function(){ 
    var $this = $(this); 
    if($this.is(".sub_name_first"){ 
    firsts.push($this.val()); 
    } else { 
    seconds.push($this.val()); 
    } 
}); 

यकीन है, इसके नहीं सबसे अच्छा तरीका है, लेकिन मैं सिर्फ 1 मिनट में है कि लिखा था और यह काम करता है

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