我有一个包含很多行的HTML表。我有七列。表中的每个单元格(<td>
)都有一个ID属性,其中grid [x] [y],x和y分别代表列和行。
示例<td>
是
<td id="grid[2][2]" class="available"...> -- This indicates 3rd column 3rd row
<td id="grid[2][4]" class="unavailable"...> -- This indicates 3rd column 5th row
等等。
现在我需要编写一个查询,它给出了class =“available”或class =“unavailable”的列数。如何用jQuery编写它?
因此,为了获得第一列具有class =“available”的列,它将是这样的,
(id = grid[0]* and class == "available").size
请帮助我将上述(一个愚蠢的查询)转换为有意义的jQuery。
答案 0 :(得分:7)
下面,
$("td[id^='grid[0]'].available").length
应该给你带有可用类和0行的td数。你可以改变行号并获得其他人。
答案 1 :(得分:1)
$("td[id|=grid].available")
这是“具有以'grid'开头的ID和'avaiable'类的TD”
现在的问题是括号用于“搜索属性”选择器,我不知道如何在搜索文本部分使用then。
答案 2 :(得分:0)
这个怎么样?
这是代码
var $column_number = 2;
var $total_for_column_2 = 0;
for(var $i=0;$i<$total_number_of_rows;$i++) {
if ( $("td[id=grid[+ $i +"]["+ $column_number +"]").hasClass("available") ) {
$total_for_column2++;
}
}
这个循环遍历特定列,检查它是否具有可用类并将其添加
答案 3 :(得分:0)
如果您不想依赖单元格的id
,您可以使用的另一种方法是:
$("#myTable").find("td:nth-child(1).available").length
请注意nth-child
选择器是从1开始的,而不是从0开始。