2011-03-06 55 views
1

w jQuery - 是否可以设置一个可以计算表中行数的侦听器。jQuery - 能够统计表中的行数?

并且当行数改变时,如果计数是eq 0或Y> 0,那么X会执行X?

感谢

+0

可能的重复:http://stackoverflow.com/questions/1149958/jquery-count-number-of-rows-in-a-table – 2011-03-06 20:28:28

+0

@Martin thx但这与观察计数 – AnApprentice 2011-03-06 20:30:17

回答

1

一种方法是使用时间监听器类:

var time = setInterval(function(){ 
            alert($('#table tr').length); 
            },1000); 

或者你可以把它当与相关联的事件更改执行的num行。

0

关于第一个问题:

$('table tr').length; 
+0

'$无关('#some-table tr')。length;'看起来更合适,万一页面上有多个表格。 – 2011-03-06 20:30:04

0

两个.length.size()会给你同样的信息。如果表ID是tbl1,然后使用jQuery的CSS选择器

$('#tbl1 tr') 

如果使用<thead><tbody><tfoot>正确,那么你应该使用下面的计算只是身体行,否则取1或2关闭上面的结果.length

$('#tbl1 tbody tr') 

至于观察行计数的变化,你需要或者

  1. 一个全局变量存储当前的行数,再加上setInterval的事件(比如100毫秒),检查更改,并提出了一个事件;或
  2. 封装这种行为与内部变种,而且使用的setInterval
0

您可以使用类似:

$('#tableID').bind('DOMNodeInserted', function() { 
    var count = $('table tr').length; 
    alert("The number of rows has changed, there are now " + count + " rows."); 
    }); 

JS Fiddle demo