如何使用jQuery计算asp.net中gridview中的行数
有谁知道如何使用jQuery计算asp:GridView中的行数。 如果没有找到行,那么我想做些什么……
GridView
只是呈现为标准HTML表格,因此只需计算GridView下的tr
元素数量:
var totalRows = $("#<%=GridView1.ClientID %> tr").length;
每个GridView都生成基本上是表的HTML,并且该表有一个ID(查看输出页面的源代码以了解我在说什么)。 您可以通过myGridView.ClientID
将ID从.Net传递给JavaScript,或者在ASP.NET 4中myGridView.ClientID
ClientIdMode="Static"
,从而使用与ASP控件完全相同的ID。
然后在jquery(它是一个与GridView层完全分离的客户端层)中,获取该ID并计算:
$("#mygridviewid tr").length;
您可以使用CssClass
(我不记得确切的拼写)属性为您的gridview分配CSS类,然后访问它jquery的css类选择器。
假设您已将gridviewclass
分配给该属性,那么当您编写时 –
$('table.gridviewclass')
在jquery中,您将能够访问由ASP.NET生成的表格,而不是ASP.NET。 现在,要访问所有行,您将写入 –
$('table.gridviewclass tr')
它将在jquery数组中为您提供该表的所有行。 要计算行数,您将写入 –
var rowcount = $('table.gridviewclass tr').length if(rowcount == 0) { // No rows found, do your stuff } else { // Rows found, do whatever you want to do in this case }
要访问第一行,您可以使用以下选择器 –
$('table.gridviewclass tr:first')
要访问最后一行,您将写入 –
$('table.gridviewclass tr:last')
你可以在这里找到一整套jquery选择器。
希望有所帮助。
我试过这个var totalRows = $("#<%=GridView1.ClientID %> tr").length;
当我尝试时它失败了
var count = $get("mygridviewclientid").rows.length
它给出了所有行(th和tr)的计数我还确保属性ClientIDMode="Static"