¿Cómo implementar subj?
cuando yo escribo:
<form>
<select>
<option value="0">aaaa</option>
<option value="1">bbbb</option>
</select>
</form>
entonces el elemento seleccionado predeterminado es "aaaa"
cuando yo escribo:
<form>
<select>
<option value=""></option>
<option value="0">aaaa</option>
<option value="1">bbbb</option>
</select>
</form>
entonces el elemento seleccionado predeterminado está en blanco, pero este elemento en blanco se presenta en el menú desplegable.
¿Cómo puedo implementar la etiqueta SELECT con el valor en blanco predeterminado que se oculta en la lista desplegable?
html
select
drop-down-menu
Nick Stavrogin
fuente
fuente
Respuestas:
Solo use atributos deshabilitados y / u ocultos:
selected
hace que esta opción sea la predeterminada.disabled
hace que no se pueda hacer clic en esta opción.style='display: none'
hace que esta opción no se muestre en los navegadores más antiguos. Consulte: ¿Puedo usar documentación para atributos ocultos?hidden
hace que esta opción no se muestre en la lista desplegable.fuente
hidden
atributo es efectivodisplay: none
, por lo que es compatible con navegadores más antiguos:<option selected disabled hidden style='display: none' value=''></option>
Se puede por ajuste
selectedIndex
a-1
utilizar.prop
: http://jsfiddle.net/R9auG/ .Para versiones anteriores de jQuery, use en
.attr
lugar de.prop
: http://jsfiddle.net/R9auG/71/ .fuente
.attr
fallará en las nuevas versiones de jQuery. Intentar ser inteligente me hizo fallar.Simplemente usando
funcionará en cualquier lugar sin script y le permitirá instruir al usuario al mismo tiempo.
fuente
fuente
Aquí hay una forma sencilla de hacerlo usando JavaScript simple. Este es el equivalente básico del script jQuery publicado por pimvdb. Puedes probarlo aquí .
.
Asegúrese de que "id_here" coincida en el formulario y en JavaScript.
fuente
No puedes. Simplemente no funcionan de esa manera. Un menú desplegable debe tener una de sus opciones seleccionada en todo momento.
Podría (aunque no lo recomiendo) observar un evento de cambio y luego usar JS para eliminar la primera opción si está en blanco.
fuente
Para puramente html @isherwood tiene una gran solución. Para jQuery, proporcione una ID a su menú desplegable seleccionado y luego selecciónelo con jQuery:
Luego use este jQuery para borrar el menú desplegable en la carga de la página:
O ponlo dentro de una función por sí mismo:
logra lo que está buscando y es fácil poner esto en funciones que pueden ser llamadas en su página si necesita borrar el menú desplegable sin recargar la página.
fuente
Puedes probar este fragmento
Funcionó para mí.
fuente