Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/05/2010, 08:14
sadzas
 
Fecha de Ingreso: junio-2008
Mensajes: 137
Antigüedad: 16 años, 6 meses
Puntos: 0
Problema con IE - "No se puede mover el foco..."

Que tal?

Tengo un problema SOLO con IE. Chrome y FireFox funciona barbaro.

(Aclaro que la "consola de errores" de FireFox no me marca ningun error..)

El problema es el siguiente:

Tengo 3 combobox anidados, pero los 2 primeros estan programados diferente al 3ro (que es el que me da problemas con IE)

Este es el codigo de los dos primeros Combobox:

Código:
function cargarPaises() {
        $.get("locations/cargarPaises.php", function(resultado){                 
                if(resultado == false)  {
                        alert("Error");
                }
                else    {
                        $('#pais').append(resultado);
                }            
        });                
}

function cargarCiudades()       {
        var code = $("#pais").val();
        $.get("locations/cargarCiudades.php", { code: code },
                function(resultado)     {
                        if(resultado == false)  {          
                                alert("Error");           
                        }
                        else    {
                                $("#ciudad").attr("disabled",false);
                                document.getElementById("ciudad").options.length=1;
                                $('#ciudad').append(resultado);
                        }
                }
        );
}
El siguiente es el 3er Combobox:

Código:
function cargarCanales() {

        <!-- ** Ejectu la funcion de AJAX para obtener el numero de canales de la ciudad ** -->
        cantCanales = getDataServer();
        for (i = 1; i <= cantCanales; i++) {
                canal.options[i]=new Option(i, i);
        }

        $("#canal").attr("disabled",false);
}

function getDataServer()
{
        var xml = null;
        var numero = document.getElementById("ciudad").value;
        var ciudad = document.getElementById("ciudad").value;
        try {
                xml = new ActiveXObject("Microsoft.XMLHTTP");
                } catch(expeption) {
                                        xml = new XMLHttpRequest();
                                        }
                xml.open("GET","consulta_canales.php?numero="+numero+"&ciudad="+ciudad, false);
                xml.send(null);
                if(xml.status == 404) alert("Url no valida");
                        return xml.responseText;
}
El 3er Combobox no se "muestra" ya que al iniciar esta oculto. Esto lo manejo desde aqui:

Código:
        cargarPaises();
<!-- ** Al cambiar el estado del combobox pais, se ejecutan dos funciones,  cargarCiudades() y limpiarCanales() ** -->
        $("#pais").change(function(){cargarCiudades();});
        $("#pais").change(function(){limpiarCanales();});

<!-- ** Al cambiar el estado del combobox ciudad, se ejecutan dos funciones,  limpiarCanales() y cargarCanales() ** -->
        var canal;
        $("#ciudad").change(function(){limpiarCanales();});
        $("#ciudad").change(function(){cargarCanales();});
Alguno tiene idea de porque no funciona en IE?? me esta volviendo loco!!

El error completo de IE es el siguiente:


Detalles de error de página web

Código:
Agente de usuario: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0;  Embedded Web Browser from: http://bsalsa.com/; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)
Fecha: Fri, 28 May 2010 14:13:32 UTC

Mensaje: No se puede mover el foco hacia el control porque el control es invisible, no está habilitado o es de un tipo que no acepta al foco.
Línea: 161
Carácter: 1
Código: 0
URI: http://xx.xx.xx.xx/xxxxx/xxxxxxxxx.php