Obter o valor selecionado do item de uma lista suspensa usando jQuery

Como posso obter o valor selecionado de uma checkbox suspensa usando jQuery?
Eu tentei usar

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

e

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

mas ambos retornam uma string vazia.

Para elementos dom de seleção única, para obter o valor atualmente selecionado:

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

Para obter o texto atualmente selecionado:

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

Deve funcionar bem, veja este exemplo:

 $(document).ready(function(){ $('#button1').click(function(){ alert($('#combo :selected').text()); }); }); 
    

Experimente este jQuery,

 $("#ddlid option:selected").text(); 

ou este javascript,

  var selID=document.getElementById("ddlid"); var text=selID.options[selID.selectedIndex].text; 

Se você precisar acessar o valor e não o texto, tente usar o método val() vez de text() .

Confira os links de violino abaixo.

Demo1 | Demo2

tente isso

 $("#yourDropdown option:selected").text(); 

Eu sei que este é um post terrivelmente antigo e eu provavelmente deveria ser açoitado por essa ressurreição lamentável, mas eu pensei em compartilhar alguns pequenos trechos JS muito úteis que eu uso em todas as aplicações do meu arsenal …

Se digitando:

 $("#selector option:selected").val() // or $("#selector option:selected").text() 

está ficando velho, tente adicionar esses pequenos crumpets ao seu arquivo global *.js :

 function soval(a) { return $('option:selected', a).val(); } function sotext(a) { return $('option:selected', a).text(); } 

e apenas escreva soval("#selector"); ou sotext("#selector"); em vez de! Fique ainda mais elegante combinando os dois e retornando um object contendo o value e o text !

 function so(a) { my.value = $('option:selected', a).val(); my.text = $('option:selected', a).text(); return my; } 

Isso me poupa uma tonelada de tempo precioso, especialmente em aplicações pesadas!

Ainda outro exemplo testado:

 < !DOCTYPE html>          

Isto irá fazer o truque

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

Isso alertará o valor selecionado. Código JQuery …

 $(document).ready(function () { $("#myDropDown").change(function (event) { alert("You have Selected :: "+$(this).val()); }); }); 

Código HTML…

  

Você forneceu seu elemento de seleção com um id?

  

Sua primeira declaração deve funcionar!

Tente isso, ele recebe o valor:

$('select#myField').find('option:selected').val();

O id que foi gerado para o seu controle suspenso no html será dynamic. Portanto, use o id completo $('ct100_').val(). Vai funcionar.

Ou se você tentasse:

 $("#foo").find("select[name=bar]").val(); 

Eu usei hoje e está funcionando bem.

usar

 $('#dropDownId').find('option:selected').val() 

Isso deve funcionar 🙂

Para uso de texto selecionado:

 value: $('#dropDownId :selected').text(); 

Para uso de valor selecionado:

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

Para obter o valor de jquery no menu suspenso, use apenas a function abaixo para enviar o id e obter o valor selecionado:

 function getValue(id){ var value = ""; if($('#'+id)[0]!=undefined && $('#'+id)[0]!=null){ for(var i=0;i< $('#'+id)[0].length;i++){ if($('#'+id)[0][i].selected == true){ if(value != ""){ value = value + ", "; } value = value + $('#'+id)[0][i].innerText; } } } return value; } 

Eu sei que isso é velho, mas eu atualizo isso com uma resposta mais atualizada

 $( document ).on( 'change', '#combo', function () { var prepMin= $("#combo option:selected").val(); alert(prepMin); }); 

Eu espero que isso ajude

 $("select[id$=dropDownId]").val() 
  • tente isso

use um desses códigos

 $('#dropDownId :selected').text(); 

OU

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

É isso que funciona

  var value= $('option:selected', $('#dropDownId')).val(); 
 $("#selector > option:selected").val() 

Ou

 $("#selector > option:selected").text() 

Códigos acima funcionaram bem para mim

Você pode usar qualquer um destes:

 $(document).on('change', 'select#dropDownId', function(){ var value = $('select#dropDownId option:selected').text(); //OR var value = $(this).val(); }); 

Você precisa colocar assim.

 $('[id$=dropDownId] option:selected').val(); 

Tente isto:

  $('#dropDownId option').filter(':selected').text(); $('#dropDownId option').filter(':selected').val(); 

Use o método abaixo para obter o valor selecionado no carregamento da página:

 $(document).ready(function () { $('#ddlid').on('change', function () { var value = $('#ddlid :selected').text(); alert(value);` }); }); 

Você pode fazer isso usando o código a seguir.

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

Se você deseja obter o valor selecionado nas opções da lista de seleção. Isto irá fazer o truque.

 $('#dropDownId option:selected').text(); 
 $("#dropDownId").val('2'); var SelectedValue= $("#dropDownId option:selected").text(); $(".ParentClass .select-value").html(SelectedValue); 

isso deve funcionar para você

  $("#dropDownId").on('change',function(){ var value=$(this).val(); alert(value); });