Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Duda con arreglo

Estas en el tema de Duda con arreglo en el foro de Frameworks JS en Foros del Web. Hola amigos el problema que tengo es como llenar arreglos a traves de una tabla que en cada fila que encuetre extraiga los datos y ...
  #1 (permalink)  
Antiguo 16/11/2010, 06:34
 
Fecha de Ingreso: febrero-2010
Ubicación: Santiago
Mensajes: 82
Antigüedad: 14 años, 10 meses
Puntos: 0
Pregunta Duda con arreglo

Hola amigos el problema que tengo es como llenar arreglos a traves de una tabla que en cada fila que encuetre extraiga los datos y los valla agregando en arreglos creados mediante ciclos o como sea conveniente en jquery y despues mostrarlos lo que estoy haciendo es lo siguiente

Cita:
$("#recorre").click(function(e){
var arreglo = new Array();
var recorridos = new Array();
var i=0;
$("#table tbody tr").each(function(){

id =$(this).find(":eq(0)").text();
nrecorridos =$(this).find(":eq(1)").text();
salida =$(this).find(":eq(2)").text();
entrada =$(this).find(":eq(3)").text();
tiempo=$(this).find(":eq(4)").text();
patente=$(this).find(":eq(5)").text();
fecharecorrido=$(this).find(":eq(6)").text();
comentarios=$(this).find(":eq(7)").text();

arreglo.push(id, nrecorridos, salida, entrada, tiempo, patente, fecharecorrido,comentarios);
recorridos[i] = new Array(arreglo);
i++;

})
for (j=0;j<i;j++)
{
alert (recorridos[j]);
}

})
al mostrarlos me muestra los creados pero a la vez que voy agregando mas filas a la tabla los muestra todos juntos y lo que quiero que por fila me cree un arreglo, si le envio 3 filas me crea tres arreglos pero no por separado sino que todo junto
gracias
  #2 (permalink)  
Antiguo 16/11/2010, 07:01
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 15 años
Puntos: 65
Respuesta: Duda con arreglo

porque aca arreglo.push estas agregando valores, al volver agrega a los anteriores, deberias resetearlo después de agregar a recorridos[i]

yo lo haria asi

Código HTML:
Ver original
  1.     <head>
  2.         <title>Ejemplo</title>
  3.         <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
  4.         <script>
  5.             $( function(){
  6.                 var arreglo = new Array();
  7.                 var recorridos = new Array();
  8.                 $("#table tbody tr").each(function(){
  9.                     id = $('td:eq(0)', this).text();
  10.                     otroCampo = $('td:eq(1)', this).text();
  11.                     recorridos.push( new Array(id, otroCampo) );
  12.  
  13.                 });
  14.  
  15.                 for (j = 0 ;j < recorridos.length; j++){
  16.                    alert ('TR' + j + '- Clave 1: ' + recorridos[j][0] + ' - Calve 2: ' + recorridos[j][1]);
  17.                }
  18.  
  19.            });
  20.        </script>
  21.     </head>
  22.  
  23.     <body>
  24.         <table id="table">
  25.             <tbody>
  26.                 <tr>
  27.                     <td>id1</td>
  28.                     <td>otro1</td>
  29.                 </tr>
  30.                 <tr>
  31.                     <td>id2</td>
  32.                     <td>otro2</td>
  33.                 </tr>
  34.                 <tr>
  35.                     <td>id3</td>
  36.                     <td>otro3</td>
  37.                 </tr>
  38.             </tbody>
  39.         </table>
  40.     </body>
  41. </html>
  #3 (permalink)  
Antiguo 16/11/2010, 07:49
 
Fecha de Ingreso: febrero-2010
Ubicación: Santiago
Mensajes: 82
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Duda con arreglo

muchas gracias Dany_s muy buena tu solucion ahora me queda enviarlo al php para despues guardar los datos espero cualquier cosa contar con tu ayuda gracias, voy a revisar algo de json por lo que estube leyendo es una buena opcion

Etiquetas: arreglos
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 18:11.