Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/01/2009, 05:18
ferran_
 
Fecha de Ingreso: septiembre-2007
Mensajes: 39
Antigüedad: 16 años, 7 meses
Puntos: 0
Exclamación problema con javascript e IE6

Hola tengo este código:

Código HTML:
<html>
<head>
<script type="text/javascript">
function ativaOptionsDisabled(){
var sels = document.getElementsByTagName('select');
for(var i=0; i < sels.length; i++){
sels[i].onchange= function(){ //pra se mudar pro desabilitado
if(this.options[this.selectedIndex].disabled){
if(this.options.length<=1){
this.selectedIndex = -1;
}else if(this.selectedIndex < this.options.length - 1){
do {
this.selectedIndex++;
} while(this.options[this.selectedIndex].disabled && this.selectedIndex < (this.options.length-1));
if(this.options[this.selectedIndex].disabled) {
do {
this.selectedIndex--;
} while(this.options[this.selectedIndex].disabled && this.selectedIndex > -2);
}
}else{
do {
this.selectedIndex--;
} while(this.options[this.selectedIndex].disabled && this.selectedIndex > -2);
}
}
}
if(sels[i].options[sels[i].selectedIndex].disabled){
//se o selecionado atual é desabilitado chamo o onchange
sels[i].onchange();
} 
for(var j=0; j < sels[i].options.length; j++){ //colocando o estilo
if(sels[i].options[j].disabled){
sels[i].options[j].style.fontWeight = 'bolder';
sels[i].options[j].style.color = 'black';

}
}
}
}
window.attachEvent("onload", ativaOptionsDisabled);
</script>
</head>
<body onload='ativaOptionsDisabled()'>
<select name="id_tema" class="campos" id="id_tema" onChange="comprobar(this)">
        <option value="" selected="selected">-- Seleccione --</option>
        <option value="1">Tarifaria y Fiscal</option>
        <option value="2">Instalaci&oacute;n</option>
        <option value="3" disabled="disabled" class="disa">-----------------------------------</option>
        <option value="4" disabled="disabled" class="disa">Operados por Risen</option>
        <option value="4" disabled="disabled" class="disa"></option>
        <option value="2">Barcelona (BCN)</option>
</select>
</body>
</html> 
Me funciona en firefox, me salen los options deshabilitados en negrita, pero en IE6 no. Sabe alguien el modo de hacerlo?

Gracias!