Foros del Web » Programando para Internet » Javascript »

problema al intentar armar un array

Estas en el tema de problema al intentar armar un array en el foro de Javascript en Foros del Web. Hola gente del foro Tengo un formulario con una lista de checkbox que están seleccionados. Consegui hacer un script que al enviar el formulario, detecta ...
  #1 (permalink)  
Antiguo 02/03/2012, 18:52
Avatar de Garot  
Fecha de Ingreso: marzo-2010
Ubicación: Mar de Dirac
Mensajes: 121
Antigüedad: 14 años, 9 meses
Puntos: 7
problema al intentar armar un array

Hola gente del foro

Tengo un formulario con una lista de checkbox que están seleccionados.
Consegui hacer un script que al enviar el formulario, detecta los checkbox que han sido deseleccionados y con esos valores "formo un array" que se lo paso a un elemento input dentro del formulario.

Código Javascript:
Ver original
  1. function check(form)
  2. {
  3.  
  4.         var resultado = new Array();
  5.  
  6.     cafe=form.valores_actuales;
  7.    
  8.        
  9.         for (i=0;i<cafe.length;++i)
  10.         {
  11.                 if (cafe[i].checked)
  12.                 {
  13.                        
  14.                 }
  15.                 else
  16.                 {
  17.                     resultado.push(cafe[i].value);
  18.                 }
  19.         }
  20.    
  21.        
  22.         form.respuesta.value = resultado;
  23.  
  24.         form.submit();
  25.        
  26. }

..........bueno en realidad no forma el array, ese es el problema. Cuando le paso al valor al input "respuesta" del formulario y lo vizualizo el valor del input es, por ejemplo:


[respuesta] => 6,7


cuando lo que yo necesito conseguir es esto:

[respuesta] => Array
(
[0] => 6
[1] => 7
)

En que estoy fallando a la hora de formar el array en javascript? ya probe, mil cosas diferentes, pero el que no sabe es como el que no ve.

Asi que pido orientación a alguien que tenga más conocimientos en javascript.

Gracias!
  #2 (permalink)  
Antiguo 02/03/2012, 19:10
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 16 años, 7 meses
Puntos: 528
Respuesta: problema al intentar armar un array

Bueno, es que un input es un elemento de texto, por tanto, no puedes almacenar un arreglo como tal dentro. Si el formulario lo vas a recibir en php, tienes dos alternativas, si el arreglo es simple, al recibirlo lo puedes convertir en arreglo con explode(), separando por las comas.

Otra alternativa si el arreglo fuera complejo, es codificarlo en json, para luego decodificarlo y convertirlo nuevamente en arreglo
  #3 (permalink)  
Antiguo 02/03/2012, 19:15
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, 7 meses
Puntos: 1485
Respuesta: problema al intentar armar un array

¡buenas!
debes estar conciente que en algunos casos los datos en javascript pueden sufrir cambios de forma implícita según sea el contexto. por ejemplo, independientemente del tipo de valor que tengas en una variable, al asignarla a una propiedad value de cualquiera de los controles de formulario (input, textarea, button), automáticamente el intérprete convierte ese valor a tipo string invocando el método interno toString de ese valor. es decir, directamente no puedes poner un tipo de valor distinto (objeto, array, función, entero) porque dicha propiedad espera que el valor asignado sea de un tipo en particular, en este caso string. y aunque lograras asignar un verdadero array, el protocolo de transmissión y el lenguaje que lo reciba no sabría como representar ese dato en su forma original (a nivel de memoria). por un "string" o más bien una serie de caracteres es la forma de comunicarse entre dos lenguajes ajenos. ¿para qué lo quieres en forma de array? en todo caso, el lenguaje que reciba ese dato puede volver a reconstruir la información. solo tienes que dividir el string por el separador: la coma.
  #4 (permalink)  
Antiguo 02/03/2012, 21:18
Avatar de Garot  
Fecha de Ingreso: marzo-2010
Ubicación: Mar de Dirac
Mensajes: 121
Antigüedad: 14 años, 9 meses
Puntos: 7
Respuesta: problema al intentar armar un array

Bueno gracias por las respuestas!

Claro que considere en utilizar "explode" de PHP, pero queria saber si esa limitación que tenia en Javascript era por falta de conocimientos o por que era!?

Saludos! Muchas gracias!

Etiquetas: armar, formulario, input
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 12:05.