<head>
<script language="javascript">
// must have the onload handler
onload = function countRows(){
var rows = document.getElementById('myTableId').getElementsByTagName('tbody')[0].rows.length;
alert(rows);
// outputs 3
}
</script>
</head>
<body>
<table id="myTableId">
<tbody>
<tr><td></td><td><input onclick="doA_Function_That_Includes_CountRows()" />
</td></tr>
<tr><td></td><td></td></tr>
<tr><td></td><td></td></tr>
</tbody>
</table>
</body>
</html>
Respuesta
Prueba esto:
var rows = document.getElementById('myTableId').getElementsByTagName('tbody')[0].getElementsByTagName('tr').length;
Se cuenta el número de <tr>
s en el <tbody>
, que a su vez será el número de filas en la tabla.
tenga en cuenta que no contará todas las filas en la tablasólo en el cuerpo mesa. Si tiene un <thead>
o un <tfoot>
o incluso una fila fuera del tbody, no se contará.
Parece que no funciona a menos que la función se inicie después del TBODY en el HTML. No puedo poner una llamada a la función en el encabezado. Tengo que ponerlo después del Tbody. – phpmeh
Obviamente. como con cualquier código JavaScript, si el navegador aún no descarga un elemento, no existe en la página. Como buena práctica general, las etiquetas '
Probar:
var numberOfRows = document.getElementById('myTableId').getElementsByTagName('tbody')[0].getElementsByTagName('tr').length;
Otra forma, utilizando el rows
property [MDN]:
var num = document.getElementById('myTableId').rows.length;
Si sólo desea contar las filas de la primera tbody
elemento, seleccione primero (tBody
property [docs])
var num = document.getElementById('myTableId').tBodies[0].rows.length;
+1 para' tbodies'. No tenía idea de que existiera. – Ryan
Lo tengo para trabajar de esta manera. Me estaba dando 1. Cuando puse la llamada a la función después de mi tbody, funciona. Lamentablemente, necesito llamar a la función al comienzo del Tbody. – phpmeh
@phpmeh: solo puede hacer referencia u obtener información sobre un elemento DOM después de haber sido creado. –
Aquí hay una implementación en funcionamiento:
var table = document.getElementById("myTableId");
var tbody = table.tBodies[0];
alert(tbody.rows.length);
Y una muestra de jsFiddle: http://jsfiddle.net/9a6zK/
- 1. Obtener el número de filas no ocultas en una tabla
- 2. jquery selector para contar el número de filas de la tabla visible?
- 3. ¿Cómo contar el número de etiquetas de opción usando jQuery?
- 4. Contar filas de una tabla filtrada en SSRS
- 5. Obtener el número de filas en una tabla HTML
- 6. MySQL: ¿Cómo contar eficazmente el número de filas en una tabla grande?
- 7. Obtenga el número de filas en la tabla usando SQLAlchemy
- 8. Zend_Db: ¿Cómo obtener el número de filas de una tabla?
- 9. Agregar filas a tbody de una tabla usando jQuery
- 10. ¿Cómo contar el número de filas en un jqGrid?
- 11. MySQL obtener el número de filas en una tabla innodb
- 12. Cómo contar el número de filas en PowerShell
- 13. número de filas SQL Server
- 14. ¿Cómo contar el número de columnas en una tabla usando SQL?
- 15. ¿Cómo añades filas a una tabla usando jQuery?
- 16. Recupere filas anteriores y siguientes en una tabla usando jQuery
- 17. Usando SQlite3 en PHP, ¿cómo contar el número de filas en un conjunto de resultados?
- 18. Contar desde una tabla, pero dejar de contar en un cierto número
- 19. PIG cómo contar un número de filas de alias
- 20. jQuery: contar el número de entradas con un valor específico
- 21. Contar el número de coincidencias
- 22. mySql: contar el número de filas que tienen los mismos datos en una columna
- 23. ¿Cómo contar casillas de verificación usando jQuery?
- 24. Una manera sencilla de contar caracteres usando .keyup en jQuery
- 25. ¿Cómo ocultar/mostrar las filas de la tabla usando jQuery?
- 26. ¿Cómo contar el número de instancias de cada ID de clave externa en una tabla?
- 27. Número máximo (utilizable) de filas en una tabla de Postgresql
- 28. ¿Puedo contar elementos usando jQuery?
- 29. ¿Número máximo de filas en una tabla sqlite?
- 30. Contar el número de filas en una relación de varios a varios (SQLAlchemy)
¿Quieres contar el número de filas en la tabla, o tbody? – Thai
En el tbody. la mesa tiene un encabezado y otras filas fuera del tbody que no quiero contar. – phpmeh