Que tal todo? Espero que alguien pueda ayudarme porque he intentado en todas las maneras y no he podido hacerlo. Tengo una funcion que lo que hace es poder seleccionar en un multiple option sin presionar control. Funciona bastante bien, pero el problema es a la hora de cargar un select con optiones ya selecionadas. El script es:
var currentOooptions = new Array();
var current;
function ssselectMultiple(s){
current = s.selectedIndex;
var topush=true;
for (var i=0; i<currentOooptions.length; i++)
{
if (current == currentOooptions[i])
{
currentOooptions.splice(i, 1);
topush=false;
break;
}
}
if (i >= currentOooptions.length && topush) currentOooptions.push(current);
for (var i=0; i<s.options.length; i++) s.options[i].selected = false;
for (var i=0; i<currentOooptions.length; i++) s.options[currentOooptions[i]].selected = true;
}
entonces si yo hago
<select multiple="multiple" size="5" onclick="ssselectMultiple(this);">
<option "b">b</option>
<option "v">v</option>
<option "t">t</option>
<option "y">y</option>
<option "o">o</option>
<option "n">n</option></select>
<!-- Asi funciona bien -->
Pero si yo cargo una pagina con algunas opciones ya seleccionadas ejemplo:
<select multiple="multiple" size="5" onclick="ssselectMultiple(this);">
<option "b" selected="selected">b</option>
<option "v" selected="selected">v</option>
<option "t">t</option>
<option "y">y</option>
<option "o">o</option>
<option "n">n</option></select>
Y toco la opcion n, se selecciona n y se borran las otras dos, lo que a mi me gustaria hacer es que n se seleccionaran y las otras sigan seleccionadas.
Alguien tiene alguna idea de como hacerlo?
Desde ya muchisimas gracias!!
un saludo! :)