2010-03-24 10 views
5

मैं निम्नलिखित कोड है:jQuery शो में एक पाठ बॉक्स एक विकल्प चुना जाता है जब

<select> 
<option value="Type 1">Type 1</option> 
<option value="Type 2">Type 2</option> 
<option value="Type 3">Type 3</option> 
<option value="Other">Other</option> 
</select> 

<input type="text" id="other" /> 

मुझे क्या करना jQuery नीचे दिए पाठ बॉक्स डिफ़ॉल्ट रूप से छुपा कर उपयोग कर रहा है, और फिर इसे दिखाना चाहते एक उपयोगकर्ता का चयन करता है, तो ड्रॉपडाउन से अन्य विकल्प।

उत्तर

6
<select id="sel"> 
<option value="Type 1">Type 1</option> 
<option value="Type 2">Type 2</option> 
<option value="Type 3">Type 3</option> 
<option value="Other">Other</option> 
</select> 

<input type="text" id="other" style="display: none;" /> 

$('#sel').change(function() { 
    $('#other').css('display', ($(this).val() == 'Other') ? 'block' : 'none'); 
}); 
+0

हालांकि कैमरून पाठ बॉक्स को छिपाने के लिए करता है, तो किसी भी अन्य विकल्प चुना गया था नहीं पूछा ... – ScottE

+0

@ScottE: यह सच है, लेकिन मैं अगर है कि क्या ओ पी इरादा नहीं है बहुत आश्चर्य होगा। –

+0

यह एक महान धन्यवाद काम करता है। – Cameron

1

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

<select id="selectbox_id"> 
<option value="Type 1">Type 1</option> 
<option value="Type 2">Type 2</option> 
<option value="Type 3">Type 3</option> 
<option value="Other">Other</option> 
</select> 

<input type="text" id="other" /> 

JQuery:

$(function(){ 
    // hide by default 
    $('other').css('display', 'none'); 

    $('selectbox_id').change(function(){ 
    if ($(this).val() === 'Other') { 
    $('other').css('display', 'block'); 
    } 
}); 
}); 
+0

क्यों वोट नीचे ...............? – Sarfraz

+0

यह सुनिश्चित नहीं है कि यह क्यों मतदान किया गया था। यह ठीक काम करता है सिवाय इसके कि "if" कथन में अतिरिक्त "=" चिह्न है। – jj2

9

किसी भी सीएसएस यहाँ कोई आवश्यकता नहीं।

$('#sel').change(function() { 
    var selected = $(this).val(); 
    if(selected == 'Other'){ 
     $('#other').show(); 
    } 
    else{ 
     $('#other').hide(); 
    } 
}); 
+0

यकीन है कि किसी ने कभी भी "सीएसएस की आवश्यकता नहीं" कभी नहीं सुना है। पृथ्वी पर क्यों आप कभी सीएसएस का उपयोग करने से बचना चाहते हैं? –

+0

@ डेविड हेडलंड, jQuery के कार्यक्षमता में निर्मित होने पर तत्वों को दिखाने और छिपाने के लिए सीएसएस का उपयोग करने का क्या मतलब है। मुझे लगता है कि यदि आप अभी भी एबैकस के साथ गणना करना चाहते हैं तो आगे बढ़ें, लेकिन शो/छुपाएं का उपयोग करना अधिक सुरुचिपूर्ण है। – Gabe

+0

दरअसल, मैंने डेविड हेडलंड का उत्तर अधिक सुरुचिपूर्ण होने का जवाब पाया। यदि आप फायरबग में प्रस्तुत सामग्री को देखते हैं तो आप देखेंगे कि सीएसएस डिस्प्ले को कवर के तहत भी इस्तेमाल किया जा रहा है। – ScottE