Ver Mensaje Individual
  #3 (permalink)  
Antiguo 07/01/2004, 17:10
furoya
(Desactivado)
 
Fecha de Ingreso: noviembre-2002
Ubicación: Ciudad Autónoma de Buenos Aires
Mensajes: 2.367
Antigüedad: 21 años, 6 meses
Puntos: 317
Hola ascar:

No estoy seguro del por qué estás usando un select y no check o

radio que solucionarían varios de tus problemas. Seguramente es un tema de diseño más que de

practicidad; como el de no poner el select centrado y que ocupe el espacio que necesite hasta el ancho

de ventana.

Mi inquina hacia las limitaciones de formato en los elementos de formulario ya es visceral. He lanzado diatribas ( algunas en

estos foros ) que terminaron hasta sugiriendo el reemplazo por otros elementos simulados, princpalmente con Javascript,

para darle formato a selects , input files , checkboxes que se comporten como los reales.

Ésto no va a resolver tu tema, aunque espero que te sirva como una idea nueva.

Código:
<HTML>
<HEAD>
<SCRIPT>

var valor="0"

function alfa(tt,vv){
if(tt.className=="sel"){
tt.className="des"; valor=(valor*1)-(vv*1)}
else {
tt.className="sel"; valor=(vv*1)+(valor*1)}
}

function bravo(){
celdas=document.all.tags("TD");
alert(valor);
for(i=0;i<celdas.length;i++) celdas[i].className="des";
valor=0;
}



function charly(){
valor="";
celdas=document.all.tags("TD");
for(i=0;i<celdas.length;i++){
if(celdas[i].className=="sel") valor+=celdas[i].innerText+" \r\n";
}
alert(valor);
for(i=0;i<celdas.length;i++) celdas[i].className="des";
valor="";

}
</SCRIPT>
<STYLE>
.des{background-color:white; color:black}
.sel{background-color:navy; color:white}
td{}

</STYLE>
</HEAD>
<BODY>
<center>
<div style="width:200px; height:110px; overflow:auto">
<table border=0 style=cursor:default>
<tr><TD class=des onclick="alfa(this,1)"><nobr><b>VALE 01 </b>QWERTYUIOPQWE</nobr></td></tr>
<tr><td class=des onclick="alfa(this,2)"><nobr><b>VALE 02 </b></nobr></td></tr>
<tr><td class=des onclick="alfa(this,4)"><nobr><b>VALE 04 </b>QWERTYUIOPQWERTY</nobr></td></tr>
<tr><td class=des onclick="alfa(this,8)"><nobr><b>VALE 08 </b></nobr></td></tr>
<tr><td class=des onclick="alfa(this,16)"><nobr><b>VALE 16 </b>QWERTYUIOP</nobr></td></tr>
<tr><td class=des onclick="alfa(this,32)"><nobr><b>VALE 32 </b></nobr></td></tr>
<tr><td class=des onclick="alfa(this,64)"><nobr><b>VALE 64 </b>QWERTYUIOPQWERTYUIOP</nobr></td></tr>
</table>
</div>
<p>
<INPUT type=button onclick=bravo() value="Suma Valores">
<p>
<INPUT type=button onclick=charly() value="Suma Cadenas">
</center>
</BODY>
</HTML>
Di por hecho que estás usando un selector múltiple ( la verdad, no sé por qué ); en éste no es necesario usar [CTRL]

para seleccionar más de una opción, pero tampoco funciona el [SHIFT] para selección "desde-hasta", ni las teclas de

dirección para bajar o subir, ni las opciones alfanuméricas; así que el saldo termina siendo negativo. Sí, bueno, es sólo un

ejemplo que hice apurado, seguro se puede mejorar.

saludos

furoya