Foros del Web » Programando para Internet » Javascript »

getElementById('algo') da distintos resultados en FF e IE

Estas en el tema de getElementById('algo') da distintos resultados en FF e IE en el foro de Javascript en Foros del Web. Hola, tengo una duda existencial, si alguien pudiera ayudarme lo agradecería! La duda surge así: Tengo una función que recibe el nombre/id de un formulario, ...
  #1 (permalink)  
Antiguo 20/06/2008, 09:32
 
Fecha de Ingreso: abril-2008
Ubicación: en Montevideo
Mensajes: 25
Antigüedad: 16 años
Puntos: 0
getElementById('algo') da distintos resultados en FF e IE

Hola, tengo una duda existencial, si alguien pudiera ayudarme lo agradecería!

La duda surge así: Tengo una función que recibe el nombre/id de un formulario, esta función lo primero que hace es verificar si ese formulario existe por el id, si no es así, verifica si existe por name, el hecho es que en FF, si no existe por id, es decir, si no tiene ese atributo con el nombre que se le pasó por parámetro, busca el atributo name con el nombre que se le pasó. Bárbaro, en FF funciona OK, pero en IE , resulta que aunque no haya ningún elemento con el id que se le pasó por parametro, este no da falso, es decir, no sigue adelante con la función, es como si encontrara algo con ese id, aunque no es así, no da falso, undefined, null, nada..!!!!

Aquí va el código y los resultados según cada navegador:

Código:
function obtenerEventos(formulario) {
    var elemento = document.getElementById(formulario);
    if(!elemento) {
        formulario = eval('document.'+formulario);
        texto = "El nombre del Formulario es "+formulario.name;
    } else {
        formulario = document.getElementById(formulario);
        texto = "El ID del Formulario es "+formulario.id;
        alert(elemento.width);
    }
    alert(texto);
}
Al llamar a la función: obtenerEventos("form_prueba")

En FIREFOX como debe ser, el resultado es una alerta que dice:
"El nombre del Formulario es form_prueba"
lo que está bien, ya que el formularlio no tiene id, sino name="form_prueba"

Pero resulta que IE me da como resultado una alerta que dice:
"El ID del Formulario es "
Es decir que no encuentra el formulario con ese id, pero no me da como que no existe, sino como que existe...

Alguien podría ayudarme??? No se si me explique bien, intenté hacerlo

Desde ya muchas gracias a todos!
  #2 (permalink)  
Antiguo 20/06/2008, 09:47
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Respuesta: getElementById('algo') da distintos resultados en FF e IE

Hola Miguelso23

IE utiliza el id y el name de la misma forma cuando utilizas getElementById (una gran chapuza) Si poner un name distinto al id que estás buscando, verás que no encuentra nada.

Saludos,
  #3 (permalink)  
Antiguo 20/06/2008, 09:57
 
Fecha de Ingreso: abril-2008
Ubicación: en Montevideo
Mensajes: 25
Antigüedad: 16 años
Puntos: 0
Respuesta: getElementById('algo') da distintos resultados en FF e IE

Simple, Muchas gracias JAVIER, hay que aprender más sobre este #@~~€!!! explorador!!!

Saludos desde Uruguay y hasta la próxima!
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 15:09.