Foros del Web » Programando para Internet » Javascript »

Adicionar elementos a un form

Estas en el tema de Adicionar elementos a un form en el foro de Javascript en Foros del Web. Hola: Aunque este problema ya lo había resuelto antes, no me había dado cuenta que solo funcionaba para internet explorer, y no funca para los ...
  #1 (permalink)  
Antiguo 06/10/2010, 15:41
 
Fecha de Ingreso: junio-2010
Mensajes: 59
Antigüedad: 13 años, 11 meses
Puntos: 5
Adicionar elementos a un form

Hola:
Aunque este problema ya lo había resuelto antes, no me había dado cuenta que solo funcionaba para internet explorer, y no funca para los demas browser, ni firefox, ni chrome, ni opera.
A la hora de crear nuevos elementos en un formulario, la clásica solución es:
Código PHP:
function crear(obj) {
  
num++;
  
fi document.getElementById('fiel'); // 1
  
contenedor document.createElement('div'); // 2
  
contenedor.id 'div'+num// 3
  
fi.appendChild(contenedor); // 4

  
ele document.createElement('input'); // 5
  
ele.type 'text'// 6
  
ele.name 'idsURL[]'// 6
  
contenedor.appendChild(ele); // 7

  
ele document.createElement('input'); // 5
  
ele.type 'button'// 6
  
ele.value 'Borrar'// 8
  
ele.name 'div'+num// 8
  
ele.onclick = function () {borrar(this.name)} // 9
  
contenedor.appendChild(ele); // 7
}
function 
borrar(obj) {
  
fi document.getElementById('fiel'); // 1
  
fi.removeChild(document.getElementById(obj)); // 10

Pero por que solo me funciona en explorer, o es q algo del código está mal?
  #2 (permalink)  
Antiguo 06/10/2010, 15:54
 
Fecha de Ingreso: agosto-2010
Ubicación: Mexico
Mensajes: 180
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Adicionar elementos a un form

Posiblemente ya que el internet explorer es tolerante a errores, aunque no se decirte donde esta el error
  #3 (permalink)  
Antiguo 06/10/2010, 16:14
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Adicionar elementos a un form

revisa la consola de errores en los navegadores que te falla. analizando el codigo, tampoco veo donde te esta fallando.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #4 (permalink)  
Antiguo 07/10/2010, 06:53
 
Fecha de Ingreso: junio-2010
Mensajes: 59
Antigüedad: 13 años, 11 meses
Puntos: 5
Respuesta: Adicionar elementos a un form

Bueno, talvez no fui muy explisito, la cosa es que el script si crea los inputs dinamicamente con javascript, pero a la hora de hacer el submit, y recuperar el POST con PHP,siempre me recupera solo un valor de los inputs, y es del que estaba creados estáticamente, y de los que creo dinámicamente no me llega ningun valor, osea me llega un array con un solo elemento. Solo en internet explorer me llega el array con todos los valores pero en los demas browsers solo me llega un valor
  #5 (permalink)  
Antiguo 07/10/2010, 08:36
 
Fecha de Ingreso: agosto-2010
Ubicación: Mexico
Mensajes: 180
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Adicionar elementos a un form

Entonces habria que revisar la parte de PHP de que tanto estas considerando los inputs generados en Javascript.

Cita:
Iniciado por rodrigo_1986 Ver Mensaje
Bueno, talvez no fui muy explisito, la cosa es que el script si crea los inputs dinamicamente con javascript, pero a la hora de hacer el submit, y recuperar el POST con PHP,siempre me recupera solo un valor de los inputs, y es del que estaba creados estáticamente, y de los que creo dinámicamente no me llega ningun valor, osea me llega un array con un solo elemento. Solo en internet explorer me llega el array con todos los valores pero en los demas browsers solo me llega un valor
  #6 (permalink)  
Antiguo 08/10/2010, 14:05
 
Fecha de Ingreso: junio-2010
Mensajes: 59
Antigüedad: 13 años, 11 meses
Puntos: 5
Respuesta: Adicionar elementos a un form

Cita:
Iniciado por Urso Ver Mensaje
Entonces habria que revisar la parte de PHP de que tanto estas considerando los inputs generados en Javascript.
Simplemente al hacerle un :
Código PHP:
echo "<pre>";print_r($_POST);echo "</pre>";
die(); 
a la pagina php que recibe el post, puedo ver que solo le llega un valor de los input, osea, llega un array con un solo elemento (firefox,chrome,opera), sin embargo, en explorer me llega el array con varios elementos.
Me paso algo parecido al llenar dinamicamente un select, hacia un innerHTML, y cuando hacia un submit, solo en el explorer me llegaba el select, en los demas browsers nada, asi q tuve que llenar el select creando uno por uno los option y adicionarlos al select y ahí recien funciono en todos los browsers. Pero en el caso de los inputs, los creo = uno por uno, sin innerHTML, entonces porque no me llegan los que genero dinamicamente?
  #7 (permalink)  
Antiguo 11/10/2010, 09:18
 
Fecha de Ingreso: agosto-2010
Ubicación: Mexico
Mensajes: 180
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Adicionar elementos a un form

Has intentado un for() con el post en PHP? haber si asi si te lo considera, si no seria ver si tu die() no esta afectando.
Cita:
Iniciado por rodrigo_1986 Ver Mensaje
Simplemente al hacerle un :
Código PHP:
echo "<pre>";print_r($_POST);echo "</pre>";
die(); 
a la pagina php que recibe el post, puedo ver que solo le llega un valor de los input, osea, llega un array con un solo elemento (firefox,chrome,opera), sin embargo, en explorer me llega el array con varios elementos.
Me paso algo parecido al llenar dinamicamente un select, hacia un innerHTML, y cuando hacia un submit, solo en el explorer me llegaba el select, en los demas browsers nada, asi q tuve que llenar el select creando uno por uno los option y adicionarlos al select y ahí recien funciono en todos los browsers. Pero en el caso de los inputs, los creo = uno por uno, sin innerHTML, entonces porque no me llegan los que genero dinamicamente?
  #8 (permalink)  
Antiguo 11/10/2010, 09:51
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Adicionar elementos a un form

Hola:

Hay elementos que no suelen crearse adecuadamente, dependiendo de los navegadores, tal como estás notando, y una de las razones (tal vez "LA" razón) es que no asignan el atributo name... claro que sin un name los elementos no se envían.

Mi solución, es en vez de crear nuevos elementos de formularios, clono alguno existente con ese atributo bien definido. No hace falta que pertenezca a ningún formulario, simplemente tenerlo oculto.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo

Etiquetas: elementos, formulario
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 14:23.