Ottenere il valore selezionato di un elemento a discesa usando jQuery

Come posso ottenere il valore selezionato di una casella a discesa usando jQuery? Ho provato ad usare

var value = $('#dropDownId').val();

e

var value = $('select#dropDownId option:selected').val();

ma entrambi restituiscono una stringa vuota.

Soluzione

Per elementi dom a selezione singola, per ottenere il valore attualmente selezionato:

$('#dropDownId').val();

Per ottenere il testo attualmente selezionato:

$('#dropDownId :selected').text();
Commentari (9)
var value = $('#dropDownId:selected').text()

Dovrebbe funzionare bene, vedi questo esempio:

$(document).ready(function(){ 
  $('#button1').click(function(){ 
    alert($('#combo :selected').text());
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="combo">
  Test 1
  Test 2
Commentari (2)

Hai fornito il tuo select-element con un id?

<select id='dropDownId'> ...

La tua prima dichiarazione dovrebbe funzionare!

Commentari (0)