Foros del Web » Programando para Internet » Jquery »

[SOLUCIONADO] Delimitar funcion Jquery.each al recorrer tablas

Estas en el tema de Delimitar funcion Jquery.each al recorrer tablas en el foro de Jquery en Foros del Web. Holaaaas! He estado leyendo acerca de la funcion para recorrer las filas de una tabla en Jquery, hay muuuchos ejemplos por la red pero ninguno ...
  #1 (permalink)  
Antiguo 15/08/2014, 17:56
Avatar de nibollo  
Fecha de Ingreso: julio-2012
Mensajes: 22
Antigüedad: 11 años, 9 meses
Puntos: 2
Pregunta Delimitar funcion Jquery.each al recorrer tablas

Holaaaas! He estado leyendo acerca de la funcion para recorrer las filas de una tabla en Jquery, hay muuuchos ejemplos por la red pero ninguno me muestra la manera de como agarrar una sola fila (definida) de tres columnas ("tomar los valores y mostralos en un alert") no tendrian alguna idea de como hacerlo?

Algunos codigos que encontre..

Código Javascript:
Ver original
  1. $('#tblUsuario tr').each(function () {
  2.  
  3. var Referencia = $(this).find("td").eq(0).html();
  4. var Nombre = $(this).find("td").eq(1).html();
  5. var Edad = $(this).find("td").eq(3).html();
  6.  
  7. });

Código HTML:
Ver original
  1. <table border="1">
  2. <tr><th>Referencia</th><th>Nombre</th><th>Edad</th></tr>
  3. <tr><td>101</td><td>Juan</td><td>23</td></tr>
  4. <tr><td>102</td><td>Oscar</td><td>33</td></tr>
  5. <tr><td>103</td><td>Pedro</td><td>45</td></tr>
  6. </body>

Estuve leyendo http://api.jquery.com/jQuery.each/ para saber si habia un ejemplo practico que pudiera darme una idea, pero ñe y encontre esta mas o menos similiar pero no toma los valores, solo filtra http://www.elclubdelprogramador.com/2014/05/14/jquery-filtra-filas-de-una-tabla-con-jquery/

Gracias ..
  #2 (permalink)  
Antiguo 15/08/2014, 18:17
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: Delimitar funcion Jquery.each al recorrer tablas

Te equivocaste de documentación, ese es otro método, homónimo, pero diferente. En la documentación del método each que usas en el ejemplo, se precisa que como argumentos de la función que se ejecuta por cada elemento encontrado, debes de indicar el número de elemento y al propio elemento, es decir:

Código Javascript:
Ver original
  1. $('#tblUsuario tr').each(function(index, element){
  2.     var Referencia = $(element).find("td").eq(0).html(),
  3.         Nombre = $(element).find("td").eq(1).html(),
  4.         Edad = $(element).find("td").eq(3).html();
  5. });

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #3 (permalink)  
Antiguo 15/08/2014, 18:24
Avatar de nibollo  
Fecha de Ingreso: julio-2012
Mensajes: 22
Antigüedad: 11 años, 9 meses
Puntos: 2
Información Respuesta: Delimitar funcion Jquery.each al recorrer tablas

Cita:
Iniciado por Alexis88 Ver Mensaje
Te equivocaste de documentación, ese es otro método, homónimo, pero diferente. En la documentación del método [URL="http://api.jquery.com/each/"][inline]each[/inline][/URL] que usas en el ejemplo, se precisa que como argumentos de la función que se ejecuta por cada elemento encontrado, debes de indicar el número de elemento y al propio elemento, es decir:

Código Javascript:
Ver original
  1. $('#tblUsuario tr').each(function(index, element){
  2.     var Referencia = $(element).find("td").eq(0).html(),
  3.         Nombre = $(element).find("td").eq(1).html(),
  4.         Edad = $(element).find("td").eq(3).html();
  5. });

Saludos
jajajaja tenes razon! Muchas gracias! ahora me paso a leerlo!! En cuando tenga un ejemplo propio lo subo por sí alguien mas lo necesite
  #4 (permalink)  
Antiguo 15/08/2014, 20:11
Avatar de nibollo  
Fecha de Ingreso: julio-2012
Mensajes: 22
Antigüedad: 11 años, 9 meses
Puntos: 2
De acuerdo Respuesta: Javascript al recorrer y delimitar tablas, obtener datos en un array.

Acaaaa estaaaa

Código HTML:
Ver original
  1.   <head>
  2.       <script type="text/javascript" src="http://code.jquery.com/jquery-2.1.0.min.js"></script>
  3.       <script>          
  4.           function nibollo(){  
  5.               var textos = '';
  6.               var selected = '';
  7.               $('#formid input[type=radio]').each(function(){
  8.                 if (this.checked) {
  9.                   selected += $(this).val();
  10.                 }
  11.               });
  12.  
  13.               for (var i = selected-1; i < selected; i++) {
  14.                  for (var j = 0; j < document.getElementById('tabladatos').rows[i].cells.length; j++) {
  15.                      textos = textos + document.getElementById('tabladatos').rows[i].cells[j].innerHTML + ' | ';
  16.                  }
  17.                  textos = textos + '\n';
  18.              }
  19.              alert(textos);
  20.              return false;
  21.          }        
  22.  
  23.  
  24.      </script>
  25.   </head>
  26.  
  27.   <body>
  28.       <table class="tabladatos" id="tabladatos" border="1">
  29.           <tr>
  30.               <td>1</td>
  31.               <td>2</td>
  32.               <td>3</td>
  33.               <td>4</td>
  34.           </tr>
  35.           <tr>
  36.               <td>nibollo</td>
  37.               <td>nibollo</td>
  38.               <td>nibollo</td>
  39.               <td>nibollo</td>
  40.           </tr>
  41.           <tr>
  42.               <td>Columna 1</td>
  43.               <td>Columna 2</td>
  44.               <td>Columna 3</td>
  45.               <td>Columna 4</td>
  46.           </tr>
  47.           <tr>
  48.               <td>----------</td>
  49.               <td>----------</td>
  50.               <td>----------</td>
  51.               <td>----------</td>
  52.           </tr>
  53.       </table>
  54.     <br><span>Selecciona una Fila para mostrar:</span></br>
  55.     <form id="formid">
  56.       <input value="1" name="fila" onclick="nibollo();" type="radio" /><label>Fila 1</label>
  57.       <input value="2" name="fila" onclick="nibollo();" type="radio" /><label>Fila 2</label><br>
  58.       <input value="3" name="fila" onclick="nibollo();" type="radio" /><label>Fila 3</label>
  59.       <input value="4" name="fila" onclick="nibollo();" type="radio" /><label>Fila 4</label><br>
  60.     </form>
  61.  
  62.   </body>
  63.  
  64. </html>

Encontre otra funcionalidad para el .each y un metodo mas facil de llegar al resultado no es taaaaaan perfecto pero hace lo que busco Gracias..

Editado, (una manera mas fácil ):
Código HTML:
Ver original
  1.   <head>
  2.       <script>
  3.           function checkbutton(id) {
  4.                   var textos = [];
  5.                   var val = document.getElementById(id).value;
  6.                   document.getElementById(id).value = val;
  7.                   for (var i = id-1; i < id; i++) {
  8.                      for (var j = 0; j < document.getElementById('tabladatos').rows[i].cells.length; j++) {
  9.                          textos.push(document.getElementById('tabladatos').rows[i].cells[j].innerHTML);
  10.                      }
  11.                      alert(textos[0]+" | "+textos[1]+" | "+textos[2]+" | "+textos[3]);
  12.                      return false;
  13.                  }
  14.          }
  15.      </script>
  16.   </head>
  17.  
  18.   <body>
  19.       <table class="tabladatos" id="tabladatos" border="1">
  20.           <tr>
  21.               <td>1</td>
  22.               <td>2</td>
  23.               <td>3</td>
  24.               <td>4</td>
  25.           </tr>
  26.           <tr>
  27.               <td>nibollo</td>
  28.               <td>nibollo</td>
  29.               <td>nibollo</td>
  30.               <td>nibollo</td>
  31.           </tr>
  32.           <tr>
  33.               <td>Columna 1</td>
  34.               <td>Columna 2</td>
  35.               <td>Columna 3</td>
  36.               <td>Columna 4</td>
  37.           </tr>
  38.           <tr>
  39.               <td>----------</td>
  40.               <td>----------</td>
  41.               <td>----------</td>
  42.               <td>----------</td>
  43.           </tr>
  44.       </table>
  45.     <br><span>Selecciona una Fila para mostrar:</span></br>
  46.     <form id="formid">
  47.       <input value="Fila 1" name="fila" id="1" onClick="checkbutton('1');" type="button" />
  48.       <input value="Fila 2" name="fila" id="2" onClick="checkbutton('2');" type="button" /><br>
  49.       <input value="Fila 3" name="fila" id="3" onClick="checkbutton('3');" type="button" />
  50.       <input value="Fila 4" name="fila" id="4" onClick="checkbutton('4');" type="button" /><br>
  51.     </form>
  52.  
  53.   </body>
  54.  
  55. </html>


Última edición por nibollo; 16/08/2014 a las 09:16

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 18:29.