Tengo una tabla (id=»docsTable») en cuyas filas un aspecto similar a este:

<tr bgcolor="#E7DDCC">
    <td align="center"><input type="checkbox" name="docsToAddToClass[]" value="35" /></td>
    <td>Document Title</td>
    <td>Document Description.</td>
</tr>

Necesito para iterar a través de la tabla, determine que las casillas de verificación que el usuario ha verificado, y para las filas con una casilla seleccionada, tome el valor para el primer y el texto para los próximos dos.

No necesito construir una colección: Dentro de cada iteración quiero cambiar algunos elementos en cualquier lugar. Esa no es la parte más difícil (para mí). Está tratando de averiguar cómo iterar a través de la tabla y seleccione sólo la s con marcada casillas de verificación.

OriginalEl autor marky | 2011-06-10

3 Comentarios

  1. 8
    <html>
      <head>
        <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" ></script>
        <script type="text/javascript">
            $(function(){
                $('#btnTest').click(function(){
                    $('#docsTable input[type="checkbox"]:checked').each(function(){
                        var $row = $(this).parents('tr'); 
                        alert($row.find('td:eq(0) input').val());
                        alert($row.find('td:eq(1)').html());
                        alert($row.find('td:eq(2)').html());
                    });
                });
            });
        </script>
      </head>
      <body>
        <table id="docsTable">
            <tr bgcolor="#E7DDCC">
                <td align="center"><input type="checkbox" name="docsToAddToClass[]" value="35" /></td>
                <td>Document Title 1</td>
                <td>Document Description.</td>
            </tr>
            <tr bgcolor="#E7DDCC">
                <td align="center"><input type="checkbox" name="docsToAddToClass[]" value="36" /></td>
                <td>Document Title 2</td>
                <td>Document Description.</td>
            </tr>
            <tr bgcolor="#E7DDCC">
                <td align="center"><input type="checkbox" name="docsToAddToClass[]" value="37" /></td>
                <td>Document Title 3</td>
                <td>Document Description.</td>
            </tr>
        </table>
        <input type='button' id='btnTest' value='Get Rows' />
      </body>
    </html>   
    Wow! Un ejemplo de trabajo en menos de 5 minutos! Y es exactamente lo que yo estaba buscando! He sido un largo tiempo que el buscador de Stackoverflow, pero esta es mi primera vez de publicar una pregunta aquí. Ustedes rock!
    Me alegro de haber podido ayudar! La mejor manera de dar la espalda a navegar por el sitio y responder a algunas preguntas. No sólo va a contribuir a la comunidad, pero puede utilizar la reputación de la ganancia y su perfil como parte de su curriculum vitae. De todos modos… Bienvenido a la página!

    OriginalEl autor Brandon Boone

  2. 2

    Usted puede tratar de algo a lo largo de esta línea:

    $('tr > td:first-child > input:checked').each(function() {  
        //$(this).val() is the value of the input
        //$(this).parent().siblings() will refer to the two <td>'s  
        //You can also try other traversal methods like $(this).parent().next()
    });  

    Espero que esto funciona y ayuda!

    OriginalEl autor Marcelo Zabani

  3. 2
    $('#docsTable > tr > td > input:checked').each(function(i,element){
    
    var el = $(element);
    alert( el.val() );
    alert( el.parent().siblings(':eq(0)').html() );
    alert( el.parent().siblings(':eq(1)').html() );
    
    });

    OriginalEl autor lord_t

Dejar respuesta

Please enter your comment!
Please enter your name here