2014-04-04 9 views
5

jsfidder qui http://jsfiddle.net/a3LwW/4/Come visualizzare spazi multipli in HTML lista di selezione <option></option>

Il mio problema è che ho più spazi nel contenuto del <option>

jQuery val() mi dà valore corretto, ma il browser rende il <option> come se c'è solo un singolo spazio nella stringa.

C'è un modo per rendere correttamente più spazi in <option> ??

Ho provato <option><pre>three spaces</pre></option>, ma non fa quello che voglio.

spaces in select option

HTML

<select id="list"> 
    <option>one space</option> 
    <option>two spaces</option> 
    <option>three spaces</option> 
</select> 
<p>Current Value:<pre id="val"></pre></p> 

JS

function update_val() { 
    $('#val').text($('#list').val()); 
} 

$('#list').change(update_val); 

//init 
update_val(); 

risposta

7

Usa &nbsp; (normalmente non si dovrebbe usare questo per la spaziatura, ma si don't have many more options in <select> elements):

<select id="list"> 
    <option>one space</option> 
    <option>two &nbsp;spaces</option> 
    <option>three &nbsp;&nbsp;spaces</option> 
</select> 

Updated Fiddle

+0

Interessante, infatti i miei dati provenivano da back-end tramite ajax, si legano all'interfaccia utente attraverso knockoutjs. Penso di poter trovare un modo per mappare una forma visualizzabile dei dati nell'interfaccia utente. Grazie! – huocp

+0

@huocp Contento di aver potuto aiutare. Non dimenticare di upvotare/accettare! – SomeKittens

1

Provate i caratteri di spaziatura diversi &nbsp; come &thinsp;, &ensp; e &emsp;.

Come

<option>three &emsp; spaces</option> 
+0

Ho davvero bisogno di semplificare la mappatura degli spazi agli spazi visibili poiché nella mia vera app i miei dati sono vincolati dal codice javascript. Mappare uno spazio su uno ' ' è tutto ciò di cui ho bisogno. Ma grazie per la variabilità degli spazi in HTML, non li ho mai usati prima! – huocp

Problemi correlati