jQuery

2011-06-23 7 views
34

के साथ चयनित विकल्प का टेक्स्ट प्राप्त करें मेरे पास कुछ मानों के साथ एक चयन बॉक्स है। मैं चयनित विकल्प टेक्स्ट कैसे प्राप्त करूं, मूल्य नहीं?jQuery

$j(document).ready(function(){ 
    $j("select#select_2").change(function(){ 
     val = $j("select#select_2:selected").text(); 
     alert(val); 
    }); 
}); 

लेकिन यह undefined के साथ वापस आ रहा है:

<select name="options[2]" id="select_2"> 
    <option value="">-- Please Select --</option> 
    <option value="6" price="0">100</option> 
    <option value="7" price="0">125</option> 
    <option value="8" price="0">150</option> 
    <option value="9" price="0">175</option> 
    <option value="10" price="0">200</option> 
    <option value="3" price="0">25</option> 
    <option value="4" price="0">50</option> 
    <option value="5" price="0">75</option> 
</select> 

मैं इस कोशिश की।

उत्तर

56

बंद है, तो आप उपयोग कर सकते हैं

$('#select_2 option:selected').html() 
+1

$ जाएगा ('# select_2: चयनित')। Html() भी काम करता है? –

+0

@ जोसेफेटी जाहिर है, हां: http://jsfiddle.net/jomanlk/kcWQw/7/ – JohnP

+0

ध्यान रखें कि $ ('# select_2')। ढूंढें ('विकल्प: चयनित')। Html() अधिक कुशल होगा ;)। – Archangel

5

val = j$("#select_2 option:selected").text(); 

आप <option>

0

के बजाय <select> चयन किए जाने वाले को अपने चयनकर्ता बदले आप वास्तव में = मूल्य डाल सकता है करने के लिए पाठ और फिर

$j(document).ready(function(){ 
    $j("select#select_2").change(function(){ 
     val = $j("#select_2 option:selected").html(); 
     alert(val); 
    }); 
}); 

या क्या मैं एक इसी तरह के मामले पर किया था आप एक अपरिभाषित होना चाहिए इस दूसरे विकल्प के साथ था

<select name="options[2]" id="select_2" onChange="JavascriptMethod()"> 
    with you're options here 
</select> 

। मुझे सुझाव दें अगर यह काम किया :)

पैट्रिक

0

इसके अलावा यू इस

$('#select_2').find('option:selected').text(); 

जो एक छोटे से तेजी से समाधान हो सकता है, हालांकि मुझे यकीन है कि नहीं कर रहा हूँ पर विचार कर सकते हैं।

12
$(document).ready(function() { 
    $('select#select_2').change(function() { 
     var selectedText = $(this).find('option:selected').text(); 
     alert(selectedText); 
    }); 
}); 

Fiddle

+0

यह सबसे सुंदर है ... विशेष रूप से जब आपके पास ऑब्जेक्ट के रूप में चयन होता है – MYNE