2012-12-19 146 views
5

ठीक है, तो मेरे पास कुछ jQuery कोड है जो एक इनपुट बॉक्स प्रदर्शित करता है यदि ड्रॉपडाउन मेनू से उपसर्ग Blue वाला कोई आइटम चुना गया है।एक्स एक्स डिस्प्ले वाई अगर वाई (खराब शीर्षक मुझे पता है)

कोड:

$(function() { 
    $('#text1').hide(); 
    $('#select2').on('change', function(event) { 
     var opt = this.options[ this.selectedIndex ]; 
     var picked_blue = $(opt).text().match(/Blue/i); 
     if(picked_blue) { 
      $('#text1').show(); 
     } else { 
      $('#text1').hide(); 
     } 
    }); 
}); 

लेकिन क्या मैं भी जोड़ने की जरूरत है, तो ड्रॉप डाउन मेनू से किसी अन्य आइटम का चयन किया कुछ और प्रदर्शित करने के लिए है। और मुझे जो दिखाना है वह वस्तुओं का एक और ड्रॉपडाउन मेनू है।

+1

आप क्या दिखाना चाहते हैं? बस इसे 'else' –

+0

के अंदर रखें' इसे 'और' में रखें? – MrCode

+0

'मुझे कुछ और प्रदर्शित करने के लिए जोड़ने की भी आवश्यकता है' वह क्या है ?? –

उत्तर

6

चाहिए आप के लिए यह काम नहीं:

if(picked_blue) { 
    $('#text1').show(); 
    $('#text2').hide(); 
} else { 
    $('#text1').hide(); 
    $('#text2').show(); 
} 

जहां text1 और text2 शेयर डोम में स्थिति , 'नीले' और 'नीले रंग में बिल्कुल नहीं' ग्रंथों के साथ क्रमशः?

+0

अच्छा, यह काम करता है :) मदद के लिए धन्यवाद। – Smiley

2

आपको अपने कथन के अन्य भाग में स्थिति डालना होगा।

$(function() { 
    $('#text1').hide(); 
    $('#select2').on('change', function(event) { 
     var opt = this.options[ this.selectedIndex ]; 
     var picked_blue = $(opt).text().match(/Blue/i); 
     if(picked_blue) { 
      $('#text1').show(); 
     } else { 
      $('#text1').hide(); 
      if($(opt).text().match(/Red/i)) 
      { 
        //You code here 
      } 
     } 
    }); 
}); 

या संक्षिप्त कोड।

$(function() { 
    $('#text1').hide(); 
    $('#select2').on('change', function(event) { 
     selectedVal = $(this).val().toLowerCase(); 
     switch (selectedVal){ 
     case 'blue': 
      //Your code 
      break; 
      case 'red': 
      //Your code 
      break; 
      case 'black': 
      //Your code 
      break; 
      default: 
      //your code 
     } 
    }); 
}); 
+0

वैसे समस्या यह है कि जो आपने जोड़ा है वह केवल उपसर्ग लाल के साथ आइटम के लिए काम करेगा, लेकिन मेरे पास कई अन्य हैं। – Smiley

+0

बदले में 'var actions = {' blue ': function() {$ text1.show(); }, 'लाल': फ़ंक्शन() {/ * bla * /}} '' क्रियाओं के साथ [चयनित]() ' – EricG

+0

@ user1914940, मैंने अपना जवाब अपडेट कर दिया है। – Adil

1

तुम क्यों Jquery में टॉगल समारोह के साथ की कोशिश नहीं कर सकते

$('#text1').toggle(); 
संबंधित मुद्दे