[英]JQuery get count of rows
非常快的點。 我在SO上看到了非常類似的問題,但它們通常使用表ID或假設只有一個表。 我有一個頁面,其中許多表都使用相同的模板(沒有唯一ID),並且想知道是否在何時加載特定數據,行是否為空。 我努力了 :
//var row = $(this).closest('table tbody:tr:first');
// var row = $(this).closest('tr').children('td:first').text();
// var row = $(this).closest('tr').length;
// var row = $(this).closest('tr').children('td:first').length;
// var row = $(this).closest('table').find("tbody").children().length;
// var row = $(this).closest('table').children('tr:last').index() + 1;
// var row = $(this).closest('table').rowIndex;
// var row = $("tbody").has("tr");
// var row = $(this).closest('tbody').has("tr");
var row = $('#tbody').children('tr:first').length;
但是無法得到正確的答案。
下面是表結構:
要獲取行數,請使用length
或size()
//$(this) assumed as element inside table.
$(this).closest('table').find('tr').length
如前所述,頁面中有很多表。 您需要讓jQuery從您想要獲取tr長度的位置識別表索引。
要獲取特定表,請使用eq()
//To get TR length in 2nd table of a page
$('table:eq(1) tr').length
僅供參考
$('.table:eq(1) tr').length
$(document).ready(function(){}
包裝您的代碼,這將在您的頁面准備就緒時起作用。 查看您的表結構,您可以使用
$(".dataTable tr").length
獲取表中的行數
$("table").each(function(){
console.log($(this).find("tr").length));
})
這將記錄頁面中所有表中的trs計數
如果要在將數據加載到任何表中時運行一些代碼,則必須使用Mutation Observer
MutationObserver = window.MutationObserver || window.WebKitMutationObserver;
//create observer
var observer = new MutationObserver(function(mutations, observer) {
console.log("Table Loaded");
//whatever you want to do when table is loaded
});
//set to observe childs ( options )
observer.observe(document.querySelector("table"), {
subtree: true,
childList:true,
attributes:true
});
我經歷了人們的建議,這些建議大多(與其他頁面一樣)假設有一個ID,並且頁面上只有一個表,盡管問題提到的並非如此。
最終使用:var row = table_values.context.tBodies [“ 0”]。firstElementChild;
我是通過開發工具檢查tbody而得到的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.