Foros del Web » Programando para Internet » Javascript »

asignarle estilo a un option de un selec

Estas en el tema de asignarle estilo a un option de un selec en el foro de Javascript en Foros del Web. hola, me rompí la cabeza intentando asignarle un estilo a un determinado option de un select, que genero a traves de js function agregar(dd,dv,ingr){ var ...
  #1 (permalink)  
Antiguo 07/09/2005, 17:30
Avatar de Cap.Buscapina  
Fecha de Ingreso: octubre-2004
Ubicación: Argentina
Mensajes: 836
Antigüedad: 19 años, 6 meses
Puntos: 4
asignarle estilo a un option de un selec

hola,
me rompí la cabeza intentando asignarle un estilo a un determinado option de un select, que genero a traves de js

function agregar(dd,dv,ingr){
var opt=document.forms['form1']['spn'];
var w=parseInt(opt.length);
texto=document.forms['form1']['selector'].options[document.forms['form1']['selector'].selectedIndex].text;
opt.options[w]=new Option(texto+"--->"+dd,texto+"--->"+dd,false,false);
document.forms['f'+dv].reset();
recomenzar();
}


esto funcina tal cual yo quiero, si no fuera que no encuentro la forma de asignarle un estilo a medida que lo voy creando.

saludos
__________________
by Capitán Buscapina
.
  #2 (permalink)  
Antiguo 07/09/2005, 18:54
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Buf la proxima vez intenta colocar un codigo que podamos utilizar, directo al problema ok? te sera mas facil encontrar ayuda y a nosotros responder. Y no te cortes en utilizar [ p h p ] y [ / p h p ] :

Código PHP:
<script>
var 
a=1;
function 
agregar(elSelect,txt,valbgColor){
    
elSelect=document.getElementsByName(elSelect)[0];
    var 
laOpcion=new Option(txt+" "+a,val+a);
    
laOpcion.style.backgroundColor=bgColor;
    
elSelect.options[elSelect.options.length]=laOpcion;
    
a++;
}
</script>

<form name="form1">
    <select name="selector" size="10" ondblclick="alert(this.options[this.options.selectedIndex].value)">
        <option value="foo">foo</option>
        <option value="kick">kick</option>
    </select>
    <br/>
    <input type="button" value="+ (verde)" onclick='agregar( "selector", "unTexto", "unValor" , "#00FF00" )'>
    <input type="button" value="+ (rojo)" onclick='agregar( "selector", "unTexto", "unValor" , "#FF0000" )'>
    <input type="button" value="+ (azul)" onclick='agregar( "selector", "unTexto", "unValor" , "#0000FF" )'>
</form> 
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
  #3 (permalink)  
Antiguo 08/09/2005, 09:45
Avatar de Cap.Buscapina  
Fecha de Ingreso: octubre-2004
Ubicación: Argentina
Mensajes: 836
Antigüedad: 19 años, 6 meses
Puntos: 4
Código PHP:
Buf la proxima vez intenta colocar un codigo que podamos utilizardirecto al problema okte sera mas facil encontrar ayuda y a nosotros responderY no te cortes en utilizar p h p [ / p h p 
ok, comprendido (el codigo era al efecto de mostrar como creaba la nueva opción, que , justamente allí era donde fallaba)

El error era que le asignaba el estilo luego de crearla y no durante el proceso.


y al solo efecto de mostrar como quedó (asi el amigo derkenuke no se me enoja ) :
Código PHP:
function agregar(dd,dv,ingr){  var opt=document.forms['form1']['spn'];  var w=parseInt(opt.length);  texto=document.forms['form1']['selector'].options[document.forms['form1']['selector'].selectedIndex].text;  var nuevaopc=new Option(texto+"--->"+dd,texto+"--->"+dd,true,true);  nuevaopc.style.backgroundColor="blue";  opt.options[w]=nuevaopc;  document.forms['f'+dv].reset();  recomenzar();  } 

__________________
by Capitán Buscapina
.
  #4 (permalink)  
Antiguo 08/09/2005, 15:12
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Cita:
(asi el amigo derkenuke no se me enoja ) :
jeje, tranquilo. Asi se hace!
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:32.