2012-03-06 16 views
5

La sintaxis para establecer una lista desplegable con múltiples valores es la siguiente:¿Cómo configurar dropdownlist a múltiples valores?

$("#multiple").val(["Multiple2", "Multiple3"]); 

Mi problema es que no sé cuántos valores que tengo. Entonces, ¿cómo configuro dinámicamente una lista desplegable para múltiples valores con valores de una matriz?

+1

se puede construir una matriz con todos sus valores y pasarlo a 'val (..) '? –

+1

@Royi Namir: puede establecer el atributo multiple = "multiple". – Luke

+0

@RoyiNamir, desde siempre: http://www.w3.org/TR/html4/interact/forms.html#adef-multiple –

Respuesta

0

hacer una comprobación para saber si la matriz tiene más valores:

 if (array[i]) { //DO WHAT YOU NEED} 
+0

Esta afirmación no comprueba los valores múltiples en una matriz ... – mamoo

0

No me queda claro lo que estamos tratando de lograr. Se puede utilizar una matriz como argumento de val() y this is the result:

> Passing an array of element values allows matching <input 
> type="checkbox">, <input type="radio"> and <option>s inside of n 
> <select multiple="multiple"> to be selected. In the case of <input 
> type="radio">s that are part of a radio group and <select 
> multiple="multiple"> the other elements will be deselected. 

Eso significa que afectará en su caso, sólo un selecto (y no una sencilla lista desplegable) con la elección de Muptiple habilitado.

Si, por el contrario por 'ajustado a varios valores' medios de adición opciones a un selecto, val() no se construye existentes para hacer eso (para ello se puede tener a look here)

3

El código debería trabajar como visto en este live demo.

de marcado:

<select multiple="multiple" id="multiple"> 
    <option value="1">item 1</option> 
    <option value="2">item 2</option> 
</select> 

Guión:

$('#multiple').val(['1', '2']); 

Resultado:

enter image description here

+0

Me pareció más un comentario, por lo que lo señalé como no una respuesta . Sin verlo es un violín. Me siento tan tonto ... Lo siento, espero que no te importe – Starx

+0

@ Startar, con suerte los administradores leerán la respuesta más detenidamente antes de eliminarla. –

Cuestiones relacionadas