2011-11-24 24 views
6

Hola, estoy estableciendo un valor en un menú desplegable usando jquery de las siguientes maneras.¿Cómo establecer el valor en el menú desplegable con Jquery?

$("#dropDownItems option[value='--Select--']").attr('selected', 'true'); 

$("#dropDownItems option[value='--Select--']").attr('selected', 'selected'); 

¡Pero ninguno de estos funciona para FireFox! y funciona bien para los navegadores restantes.

¿Alguien me puede ayudar?

+0

Tal vez hay un problema con las implementaciones de CSS con comillas simples. ¿Has probado '$ (" # dropDownItems option [value = \ "- Select __ \"] "). Attr (" selected "," selected ");'? –

+0

¿Qué versión de jQuery estás usando? Pruebe Prop en lugar de attr. – Brij

Respuesta

11

Esto debería hacer el truco para usted.

$('#dropdownID').val("Value to be selected"); 
3
$("#dropDownItems").val("--Select--"); 

O, si lo que desea es seleccionar la primera opción, independientemente de su valor, se puede definir esta función auxiliar:

$.fn.selectFirst = function() { 
    return $(this).find("option:first").attr("selected", "selected").end(); 
} 

Entonces utilizar de esta manera:

$("#dropDownItems").selectFirst(); 
1

Si desea establecer el valor predeterminado y es el primer elemento, puede hacer:

$('#dropDown')[0].selectedIndex=0; 
0

Supongo que hay varias formas de hacerlo. La manera más fácil:

$("#dropdownID").val("dropdownValue"); 

Esto funcionará muy bien, pero no disparará el evento de cambio si lo tiene en cualquier caso. Para resolverlo, lo utilizan, como a continuación:

$("#dropdownID").val("dropdownValue").change(); 

Otras formas posibles:

$("#dropdownID").attr('selected','selected'); 

$("#dropdownID").prop('selected', true); 
0

probar esto

$('[id*=_dropdown]').val("--Select--"); 
Cuestiones relacionadas