The following code works:
$(\"#select-id\").change(function(){
var cur_value = $(\'#select-id option:selected\').text();
. . .
});
How
var cur_value = $('option:selected',this).text();
Best guess:
var cur_value = $('#select-id').children('option:selected').text();
I like children better in this case because you know you're only going one branch down the DOM tree...
It's just
$(this).val();
I think jQuery is clever enough to know what you need
For the selected value: $(this).val()
If you need the selected option element, $("option:selected", this)
Best and shortest way in my opinion for onchange events on the dropdown to get the selected option:
$('option:selected',this);
to get the value attribute:
$('option:selected',this).attr('value');
to get the shown part between the tags:
$('option:selected',this).text();
In your sample:
$("#select-id").change(function(){
var cur_value = $('option:selected',this).text();
});
$(this).find('option:selected').text();