2010-07-06 20 views
5

मैं निम्न HTMLछिपा हुआ क्षेत्र मूल्य Jquery प्राप्त करें?

<input type="hidden" name="conf1" value="7th IEEE/IFIP International Conference on Embedded and Ubiquitous Computing (EUC-09)"> 
    <input type="hidden" name="conf2" value="IEEE International Symposium on Parallel and Distributed Processsing with Applications"> 
    <input type="hidden" name="conf3" value="jkhga"> 
    <input type="hidden" name="conf4" value="test"> 
    <input type="hidden" name="conf5" value="The 3rd International Conference on Adaptive Business Information Systems (ABIS'09)"> 

    <input type="text" name="published"> 

है और मैं एक सरणी jQuery का उपयोग करने में छिपा क्षेत्रों के मूल्यों को प्राप्त करने के लिए कोशिश कर रहा हूँ। यहां मैंने कोशिश की है:

var conferences = new Array(); 

     conferences[0] = $('#conf1').val(); 
     conferences[1] =$("[name='conf2']").val(); 
     conferences[2] =$("[name='conf3']").val(); 
     conferences[3] = $("[name='conf4']").val(); 
     conferences[4] =$("[name='conf5']").val();  

क्या कोई मुझे उन्हें पढ़ने के तरीके पर निर्देशित कर सकता है?
अग्रिम धन्यवाद
डीन

उत्तर

3
var conferences = []; 

$('input:hidden[name^="conf"]').each(function() { 
    conferences.push($(this).val()); 
}); 
0

कोड के नीचे का प्रयास करें।

$(...).attr('value'); 

.attr(...): केवल शुरुआत (जब एचटीएमएल बनाई गई है) पर वस्तुओं मूल्य हो रही है।
.val(): ऑब्जेक्ट की संपत्ति मान प्राप्त हो रही है जो कई बार बदल सकती है। संग्रह से अधिक

var array = $('input:hidden').map(function() { 
    return this.value; 
}).get(); 

.map() दोहराता है, और एक jQuery वस्तु में वापसी मान देता है:

+0

समझाने के लिए whay '.val()' '.attr()' काम करता है, ताकि लोगों को बेहतर समस्या को समझ सकते हैं और जब जबकि काम नहीं किया अपने जवाब पर विचार करें यह समाधान लागू है। – Djizeus

0

It looks to me like your code works fine already, को छोड़कर है कि वहाँ कोई #conf1। सब कुछ सरणी के लिए सही ढंग से लिखा लगता है, और आसानी से conferences[0] के माध्यम से पहुँचा जा सकता है, conferences[1], आदि

आप शायद यह साफ कर सकता है jQuery चाल के साथ है, लेकिन क्या तुम हो, कार्यात्मक है अगर आप जानते हैं कि आप केवल 5 सम्मेलनों होगा ।

2
var array = $.map($('input:hidden'),function(i) { 
    return i.value; 
}); 

यह array करने के लिए मानों की एक सरणी आवंटित और $(selector).map() जो एक jQuery उद्देश्य यह है कि आप तो पर get() कॉल करने के लिए एक सरणी वापस जाने के लिए की जरूरत है देता है का उपयोग कर से थोड़ा कम वर्बोज़ है जाएगा।

Demo Here

1
var conferences = new Array(); // object Array 

var conferencesVal = new Array(); // string Array 

$("[type=hidden]").each(function(i,e){ 

    // object array =>altarnatif method 
    conferences.push({name:$(this).attr("id"),value: $(this).val()}); 

    //string array 
    conferencesVal[i]= $(this).val(); 

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