Ho la necessità di mostrare il DropDown (elemento di selezione HTML) inizialmente espanso quando viene caricato in modo che tutte le opzioni nel DropDown siano mostrate. Ho cercato un po ', ma sorprendentemente, non ho trovato una risposta a un problema così semplice. Sto usando ASP.NET MVC con jquery.Come mostrare il menu a discesa espanso automaticamente in modo che visualizzi tutte le opzioni quando la pagina è caricata
risposta
Si potrebbe scrivere nel codice HTML:
<select size="3" name="test" id="test">
<option value="1">one</option>
<option value="2">two</option>
<option value="3">three</option>
</select>
e poi via javascript impostare un timer che dopo un po 'cambia l'attributo dimensione casella di selezione su 1. Ad esempio alla fine della pagina (prima del tag body clsed) inserisci questo codice:
<script type="text/javascript">
window.setTimeout(function() { document.getElementById('test').size = 1; }, 5000); //5000 = 5 seconds
</script>
Questo è sufficiente per far sapere all'utente che l'elenco è popolato. Non funziona per me. Ma grazie per lo sforzo. – mohang
Ecco un po 'di mashup (che ha bisogno di modifiche e ottimizzazione), ma dovrebbe cominciare:
<div style="position:relative">
<select style="position: absolute">
<option>option 1</option>
<option>option 2</option>
<option>option 3</option>
<option>option 4</option>
<option>option 5</option>
</select>
</div>
<script type="text/javascript">
$(document).ready(function() {
$("select").one("focus", function() {
this.size = this.options.length;
}).one("click", function() {
this.size = 1;
}).one("blur", function() {
this.size = this.options.length;
}).focus();
});
</script>
Grazie per la soluzione. La soluzione sta funzionando, ma devo ridimensionare la dimensione con il clic del mouse da qualsiasi altra parte. Ma posso facilmente aggiungere questo. – mohang
@mohang - Ah, ho appena aggiunto un gestore di eventi 'blur' che è associato una volta usando' one' per farlo (che potrebbe essere un po 'più ordinato). – karim79
si potrebbe scrivere il codice HTML come questo
<html>
<select id="abc">
<option>option 1</option>
<option>option 2</option>
<option>option 3</option>
<option>option 4</option>
<option>option 5</option>
</select>
</html>
Di seguito, è la funzioneJavaScript che si espande automaticamente.
<script type="text/javascript">
$(document).ready(function() {
var dropdown = document.getElementById("abc");
var event;
event = document.createEvent('MouseEvents');
event.initMouseEvent('mousedown', true, true, window);
dropdown.dispatchEvent(event);
});
</script>
Vorrei che le persone scrivessero codice di esempio più generico, non tutti usano jQuery. –
La domanda dice "Sto usando ASP.NET MVC con jquery", ed è taggato "jquery" e il corpo della funzione è javascript generico. – mhanney
- 1. Come posso fare in modo che un browser visualizzi tutte le opzioni del datalist quando viene impostato un valore predefinito?
- 2. Come rimuovere tutte le opzioni da un menu a discesa utilizzando jQuery/JS
- 3. Aggiungi opzioni personalizzate al menu a discesa in Magento
- 4. Come passare a TFS automaticamente quando viene caricata la soluzione?
- 5. Come mostrare il menu di opzioni in Android 4.2
- 6. Il menu a discesa Bootstrap causa la messa a fuoco per passare all'inizio della pagina
- 7. Attivare un selezionato elemento modulo per mostrare le sue opzioni (aperto a discesa opzioni) con JavaScript
- 8. Come popolare l'elenco a discesa prima che la pagina venga caricata nei moduli Web?
- 9. JQuery Select2 - Come selezionare tutte le opzioni
- 10. Come faccio a sapere quando un'immagine è caricata in Picturebox
- 11. Il modo migliore (più efficiente) per mostrare il menu delle opzioni dinamiche in angularjs
- 12. La barra delle azioni mostra il menu a discesa quando solo un elemento nel menu
- 13. Menu a discesa Bootstrap nel menu a discesa
- 14. Menu a tendina personalizzati/menu a discesa
- 15. Come visualizzare le checkbox nel menu a discesa HTML?
- 16. Come posso limitare le opzioni visibili in un menu a discesa HTML ?
- 17. completamento automatico mostra tutte le opzioni a fuoco
- 18. Che cos'è il menu a discesa "$ play test" in circleCI?
- 19. La prima opzione del menu a discesa non è un'opzione; forzare l'utilizzo di altre opzioni
- 20. In che modo il browser Chrome decide quando inviare OPZIONI?
- 21. Come modificare il segnaposto del menu a discesa selectize.js?
- 22. Perché il mio menu a discesa è così goffo?
- 23. Fare qualcosa DOPO che la pagina è stata caricata completamente
- 24. Jquery - se la pagina è stata caricata
- 25. Menu a discesa ActionBar Styling
- 26. Impedisci a select2 di focalizzare automaticamente il suo input di ricerca all'apertura del menu a discesa
- 27. Errore di Chrome sul menu a discesa dell'elemento selezionato quando molte opzioni sono nascoste
- 28. Come impostare le opzioni di un menu a discesa usando Javascript/jQuery?
- 29. WPF TreeView - Come scorrere in modo che il ramo espanso sia visibile
- 30. Consigli per le voci del menu a discesa che sono troppo larghe?
Soluzioni non dirette: 1) emettere la prima opzione "Seleziona il tuo paese .." o simili; 2) utilizzare i pulsanti di opzione. – chelmertz