Hola a todos, tengo un problemilla que quizás alguno me pueda ayudar.
Con php accediendo a un base de datos cargo los valores de un select multiple de forma ordenada y comparando con los valores registrados en tablas muestro con selected los elegidos en otra sesion por el usuario. Hasta aquí todo bien, el problema surge cuando intento que los valores selected se muestren los primeros de la lista, al menos uno de ellos sin que el resto queden deseleccionados, ya que visualizo solo dos líneas del select.
He intentado meter en el body un pequeño javascript para dar valores a select multiple, pero me deja solo uno seleccionado aunque tenga varios selected, supongo porque solo carga el primero aunque dependiendo de como doy valor al select me deja el primero o el último seleccionado.
Ejemplo ya en html y javascript sin codigo php de carga de datos:
<body onLoad="document.nombre_formulario.element[nombre_select[]].value ='valor_1'.value='valor_3'.value='valor_5'">
<form name="nombre_formulario" method="post" action="">
<select name="nombre_select[]" size="2" multiple style="width:200;">
<option value="valor_1" selected>VALOR 1</option>
<option value="valor_2" >VALOR 2</option>
<option value="valor_3" selected>VALOR 3</option>
<option value="valor_4">VALOR 4</option>
<option value="valor_5" selected>VALOR 5</option>
<option value="valor_6">VALOR 6</option>
</select>
</form>
Con esto me muestra entre los dos primeras línea el VALOR5 seleccionado pero el 1 y el 3 no me los muestra seleccionados.
Creo que mi problema esta en como en javascript cargo los valores de un array que el select ya controla su selección con selected.
Gracias de ante mano si alguno me puede orientar.
Un saludo a todos