Problemas con innerHTML

Crear páginas para Gecko, diferencias con IE, articulos de interés y recursos en español
guagua

Problemas con innerHTML

Mensajepor guagua » Mié Mar 02, 2005 2:16 pm

Buenas, tengo problemas con innerHTML.
El codigo de mi pagina se genera dinamicamente y crea una encuesta con opciones de respuesta de tipo radiobutton. Al marcar los radiobutton se lanza un evento que captura el html que he insertado dinamicamente (dentro de un tag <td valign="top" id="txtEncuesta"></td>) mediante la propiedad innerHTML.
Lo que hago es:
texto = document.getElementById('txtEncuesta').innerHTML;
El problema es que al capturar el texto no me captura los CHECKED de los radio buttons, y no se porque. Creo que lo que esta haciendo es capturar el texto tal y como se lo pase a la propiedad al hacer
document.getElementById('txtEncuesta').innerHTML = texto;
es decir, con el formulario creado y listo para seleccionar las respuestas correspondientes.
Estoy recuperando mal el texto??? Algo por hacer???

Gracias por anticipado.

Avatar de Usuario
MorZilla
Lagarto
Lagarto
Mensajes: 335
Registrado: Jue Oct 21, 2004 12:54 pm
Ubicación: ¡Qué te importa! (Otra vez:)
Contactar:

Mensajepor MorZilla » Vie Mar 04, 2005 2:22 pm

Amigo, yo te puedo dar una mano, pero no entendí bien tu pregunta. Te pido que la redactes de nuevo. Creo que el problema es que el Script no capta el "Checked" del radiobutton. Hacélo de esta forma, suponiendo que el Radiobutton se llame Opcion1:

Código: Seleccionar todo

document.getElementById("Opcion1").checked

Devuelve un valor Boolean (true o false)

Invitado

Mensajepor Invitado » Mié Mar 09, 2005 12:05 pm

Si, el problema es que al recoger el sodigo mediante innerHtml no recoge las selecciones realizadas en los radiobuttons y no se porque.
No les ha pasado nunca algo similar???

Avatar de Usuario
MorZilla
Lagarto
Lagarto
Mensajes: 335
Registrado: Jue Oct 21, 2004 12:54 pm
Ubicación: ¡Qué te importa! (Otra vez:)
Contactar:

Mensajepor MorZilla » Sab Mar 12, 2005 9:30 pm

Ya entendí. Lo que te propongo es que crees una variable JavaScript cuyo valor cambie según qué radiobutton selecciones. Ej:

Código: Seleccionar todo

<script type="text/javascript">
var radio_checked = 0;
</script>
...
<input type="radio" id="radio1"
onfocus="if(this.checked) radio_checked=1">
<input type="radio" id="radio2"
onfocus="if(this.checked) radio_checked=2">

La variable radio_checked indica cuál opción está seleccionada.
Ojalá te sirva, amigo.[/code]

Invitado

Mensajepor Invitado » Lun Mar 14, 2005 10:10 am

Ya habia pensado en eso, pero como el numero de radiobuttons que puedo tener es infinito y ademas se generan dinamicamente, habia descartado la idea...
lo que no entiendo es como funciona InnerHTML en firefox y por que razon no recoge el codigo actualizado y si el inicial. En Explorer esto si funciona, y no me parece que sea un bug, me parece que en Firefox esta mal implementado.

Avatar de Usuario
galio
Gran Mozilla
Gran Mozilla
Mensajes: 17288
Registrado: Dom Sep 14, 2003 1:22 am
Ubicación: Argentina
Contactar:

Mensajepor galio » Lun Mar 14, 2005 9:48 pm

Lamento no poder ayudarte con esto, pero sólo acotar lo de siempre, que está comprobado "científicamente" que Gecko, el motor de dibujado que usa Firefox, es el que mejor soporta los estándares web, y eso lo dice hasta la W3C. Seguramente es algo mal implementado en el IE, sólo que la forma de hacerlo bien es diferente ;).

Avatar de Usuario
MorZilla
Lagarto
Lagarto
Mensajes: 335
Registrado: Jue Oct 21, 2004 12:54 pm
Ubicación: ¡Qué te importa! (Otra vez:)
Contactar:

Mensajepor MorZilla » Jue Mar 17, 2005 3:29 pm

En este caso en particular estás equivocado, Galio. "innerHTML" es una propiedad no estándar inventado para IE que también es soportado por Gecko. La cuestión es que Gecko soporta "innerHTML" de manera distinta comparado con IE, y la forma correcta de usarlo sería la del explorador de Microsoft.
Pero, obviamente, Gecko soporta muchísimo mejor los estándares que IE.

Avatar de Usuario
galio
Gran Mozilla
Gran Mozilla
Mensajes: 17288
Registrado: Dom Sep 14, 2003 1:22 am
Ubicación: Argentina
Contactar:

Mensajepor galio » Jue Mar 17, 2005 9:53 pm

Equivocado, depende cómo lo mires: algo que no es estándar está mal implementado, en el IE y donde sea :D.

Avatar de Usuario
MorZilla
Lagarto
Lagarto
Mensajes: 335
Registrado: Jue Oct 21, 2004 12:54 pm
Ubicación: ¡Qué te importa! (Otra vez:)
Contactar:

Mensajepor MorZilla » Vie Mar 18, 2005 1:08 pm

digo que la manera de IE es la "correcta" porque fue la que creó la propiedad,aunque en otro punto de vista tenés razón.

Invitado

Mensajepor Invitado » Jue Ago 16, 2007 7:30 pm

A mí me pasa algo parecido; el javascript que he cargado dentro de la propiedad innerHTML no se me ejecuta.

nico89abc
Visitante conocido
Visitante conocido
Mensajes: 17
Registrado: Mar Ago 07, 2007 8:26 pm
Ubicación: Argentina
Contactar:

Mensajepor nico89abc » Mar Sep 04, 2007 3:53 pm

La propiedad innerHTML no es estándar. Es más recomentable utilizar los objetos, propiedades y métodos del DOM.

JETY

Re:

Mensajepor JETY » Mar Feb 10, 2009 5:26 pm

J
MorZilla escribió:En este caso en particular estás equivocado, Galio. "innerHTML" es una propiedad no estándar inventado para IE que también es soportado por Gecko. La cuestión es que Gecko soporta "innerHTML" de manera distinta comparado con IE, y la forma correcta de usarlo sería la del explorador de Microsoft.
Pero, obviamente, Gecko soporta muchísimo mejor los estándares que IE.

________________________________________________________


Si innerHTML lo creo explorer, sea o no un estandar, todos aquellos que la copian deben comprometerse a que funcione por lo menos igual a la original, cosa que no esta pasando con los demas navegadores

Pelon

Re: Problemas con innerHTML

Mensajepor Pelon » Jue Feb 19, 2009 3:07 pm

innerHTML no es estandar. Los estandares los define la W3C, indepediente de quien cree los codigos y/o lenguajes, aunque se dice que en los prox años la W3C piensa declarar innerHTML como estandar, pero hasta el momento es solo una funcion creada por Microsoft. Por estos dias ya son varios los navegadores que utilizan esta funcion, pero aun asi no es recomendable. Aunque sea un logo mas extenso, y para algunos complicado, es mejor utilizar DOM, ya que es un estandar de la W3C.


Volver a “Desarrollo web (HTML/CSS/JS, accesibilidad...)”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado