Programación Web y Scripting > JavaScript
Componentes Creados Con Ajax
Mollense:
Hola amigos mios.
Me veo en la necesidad de acceder desde JavaScript a algunos componentes (Inputs) generados previamente mediante una página PHP ejecutada mediante AJAX cuyo resultado es asignado a un DIV de la página principal llamado "marco" de la siguiente manera:
--- Código: Text ---cuerpo=document.getElementById("marco");cuerpo.innerHTML=ajax.responseText; .-
El problema es a la hora de procesar los datos ingresados por el usuario en esos inputs ya que JavaScript no los puede accesar, y aunque los esté viendo en pantalla, en el código fuente de la página no están, se encuentra el DIV vacío
--- Código: Text ---<div id="marco"></div> como es cargado en un principio (Antes de ejecutar la petición mediante AJAX).-
Alguien conoce alguna solución o tiene alguna sugerencia para que pueda probar?
Se los agradezco por adelantado.-
Un saludo :beer:
Mollense:
Bueno gente. Ya está.
En vez de acceder de la forma
--- Código: Text ---document.formCriteros.criterioChoferes.value se debe acceder mediante
--- Código: Text ---document.getElementById('criterioChoferes').value
Un saludo
Altareum:
Bueno, en realidad, si el campo lo crea dentro del formulario "formCriteros", debería funcionar el código que intentabas utilizar, aunque depende mucho del navegador.
Igualmente no recomiendo usar la propiedad innerHTML, ya que es problemática. Por ejemplo en IE (no se la v7, porque no la he usado aún), si llenas un input, creado con innerHTML, y luego agregas un nuevo campo al documento (con innerHTML), el valor agregado desaparece.
Te recomiendo que uses la extensión FireBug de Firefox... es muy útil para ver lo que creas dinámicamente.
Altareum.
Mollense:
Muchas gracias Altareum
--- Cita de: "Altareum" ---Bueno, en realidad, si el campo lo crea dentro del formulario "formCriteros", debería funcionar el código que intentabas utilizar, aunque depende mucho del navegador.
--- Fin de la cita ---
Cierto, el verdadero problema es que solo estaba especificando el atributo name y no así el id.-
--- Cita de: "Altareum" ---Igualmente no recomiendo usar la propiedad innerHTML, ya que es problemática. Por ejemplo en IE (no se la v7, porque no la he usado aún), si llenas un input, creado con innerHTML, y luego agregas un nuevo campo al documento (con innerHTML), el valor agregado desaparece.
--- Fin de la cita ---
Que curioso, nunca se dio el caso en el que tenga que trabajar de esa forma y por eso lo desconocía. Alguna alternativa?
--- Cita de: "Altareum" ---Te recomiendo que uses la extensión FireBug de Firefox... es muy útil para ver lo que creas dinámicamente.
--- Fin de la cita ---
Si lo tengo y gracias al cielo que existe :D
Un saludo Altareum :beer:
Altareum:
--- Cita de: "Angel_K_ido" ---
--- Cita de: "Altareum" ---Igualmente no recomiendo usar la propiedad innerHTML, ya que es problemática. Por ejemplo en IE (no se la v7, porque no la he usado aún), si llenas un input, creado con innerHTML, y luego agregas un nuevo campo al documento (con innerHTML), el valor agregado desaparece.
--- Fin de la cita ---
Que curioso, nunca se dio el caso en el que tenga que trabajar de esa forma y por eso lo desconocía. Alguna alternativa?
--- Fin de la cita ---
Sip, usa las funciones del DOM como apendChild, childNodes, etc... Con estas no tendrás ningún problema.
Por otro lado,
--- Cita de: "Angel_K_ido" ---Bueno, en realidad, si el campo lo crea dentro del formulario "formCriteros", debería funcionar el código que intentabas utilizar, aunque depende mucho del navegador.
--- Fin de la cita ---
Cierto, el verdadero problema es que solo estaba especificando el atributo name y no así el id.-[/quote]
??, pero si justamente para acceder la forma document.formluario.campo.value , se hace mediante el atributo name del campo.
El id, sirve para la función document.getElementById()
Altareum.
Navegación
[#] Página Siguiente
Ir a la versión completa