2016-01-19 19 views
6

Realizzo una configurazione per la mia applicazione Web, provo a renderla alla pagina web. Di seguito è parte del mio codice. Voglio l'opzione selezionata per la configurazione [0]. Il volume ha. Quindi, se config [0] .volume è '50', l'opzione selezionata sarà '50'. I codici stanno funzionando bene. Ma mi chiedevo. 'Come posso accorciare questo codice?' Così dettagliato con il mio codice.Opzione di selezione HTML con EJS

<select id="volume"> 

<option value="1" <%= config[0].volume == '1' ? 'selected' : ''%>>1</option> 
<option value="5" <%= config[0].volume == '5' ? 'selected' : '' %>>5</option> 
<option value="10" <%= config[0].volume == '10' ? 'selected' : '' %>>10</option> 
<option value="50" <%= config[0].volume == '50' ? 'selected' : '' %>>50</option> 
<option value="75" <%= config[0].volume == '75' ? 'selected' : '' %>>75</option> 
<option value="100" <%= config[0].volume == '100' ? 'selected' : '' %>>100</option> 

</select> 

Penso a 2 ore, ma non succede niente. Forse devo utilizzare jQuery o JavaScript, e aggiungere attribuire ad essa è,

attr('selected')... ? 

ho idea, Mi potrebbe aiutare ..?

risposta

8

È possibile inserirlo in un ciclo in base ai valori dell'opzione.

<select id="volume"> 

<% 
var options = [ "1", "5", "10", "50", "75", "100" ]; 
for (var i = 0; i < options.length; i++) 
{ 
    var selected = (config[0].volume == i) ? "selected" : ""; 
    %><option value="<%=options[ i ] %>" <%=selected %>><%=i %></option><% 
} 
%> 
</select>