Foros del Web » Programando para Internet » Javascript »

Problema con array

Estas en el tema de Problema con array en el foro de Javascript en Foros del Web. Hola gente, tengo una pagina en donde genero un array a partir de varios inputs (de cantidad dinamica, dependiendo del usuario), utilizo Código PHP: var  ...
  #1 (permalink)  
Antiguo 02/09/2010, 20:05
 
Fecha de Ingreso: diciembre-2008
Mensajes: 101
Antigüedad: 15 años, 4 meses
Puntos: 0
Problema con array

Hola gente, tengo una pagina en donde genero un array a partir de varios inputs (de cantidad dinamica, dependiendo del usuario), utilizo
Código PHP:
var campos=documet.form1[monto]; 
despues guardo la cantidad de elementos
Código PHP:
var cant=campos.length
Esto funciona bien cuando tengo 2 o mas elementos en el array, pero cuando tengo solo 1 me dice que cant is undefinned.
Alguien sabe como solucionarlo por favor!!?
__________________
Gimnasia y Esgrima La Plata, un sentimiento, no trates de entenderlo
  #2 (permalink)  
Antiguo 02/09/2010, 20:11
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: Problema con array

en lugar de leer directamente la propiedad length desde campos, la lees desde elements.
Código:
cant = campos.elements.length;
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 02/09/2010, 20:16
 
Fecha de Ingreso: diciembre-2008
Mensajes: 101
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Problema con array

zerokilled gracias por responder.. pero no me funciona, me dice= "campos.elements is undefinned". por favor ayudenme!! :(
__________________
Gimnasia y Esgrima La Plata, un sentimiento, no trates de entenderlo
  #4 (permalink)  
Antiguo 02/09/2010, 20:31
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: Problema con array

quizas sea yo... ¿que tipo de valor representa la variable campos?
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #5 (permalink)  
Antiguo 02/09/2010, 20:33
 
Fecha de Ingreso: diciembre-2008
Mensajes: 101
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Problema con array

campos deberia ser un array formado por los valores de los input de mi formulario llamados monto. por eso puse var campos=document.form1[monto]. tal vez cuando hay un solo campo no genera un array..
__________________
Gimnasia y Esgrima La Plata, un sentimiento, no trates de entenderlo
  #6 (permalink)  
Antiguo 02/09/2010, 20:44
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: Problema con array

es correcto, cuando existe un solo campo bajo un nombre, no se crea el array. a modo de referencia: tecnicamente no es un array, es una coleccion de elementos HTML (objeto HTMLCollection) pero se podria decir que se comporta como un array. pero esto sucede cuando mas de un elemento contiene el mismo valor en el atributo name. para la solucion hay varias alternativas. a mi juicio, la mas sensata -porque sospecho que luego vas a iterar los campos- es que uses la funcion document.getElementsByName el cual siempre devuelve una coleccion de elementos, existan o no elementos con el valor indicado como argumento.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #7 (permalink)  
Antiguo 02/09/2010, 20:52
 
Fecha de Ingreso: diciembre-2008
Mensajes: 101
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Problema con array

muchisimas gracias zerokilled por contestarme.. me aclaraste el panorama. Justo antes de leer el ultimo post hice una solucion medio rustica. despues de hacer cant=campos.length hago un if preguntando si el valor de cant es undefined lo pongo en 1. parece q funciona bien. graciias por tu ayuda
__________________
Gimnasia y Esgrima La Plata, un sentimiento, no trates de entenderlo
  #8 (permalink)  
Antiguo 02/09/2010, 20:56
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: Problema con array

esa es otra alternativa, pero me limite a ella por lo que sospechaba.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.

Etiquetas: Ninguno
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 23:09.