javascript - 如何排除包含具有特定类的 TD 的 TR
问题描述
我有一个函数,我在其中获取表的第一个 TR,然后获取该 TR 的所有 TD。现在我需要修改这个函数:当我取第一个 TR 时,我需要检查我的 TR 的所有 TD 是否都有类“HD1”,我需要取表的第二个 TR。我把我的功能放在下面。提前致谢。
function getColumnsIdx(id) {
var header = $("table#" + id + " thead tr:eq(1)");
var header_fields = $("td", header);
var header_idx = new Object();
header_fields.each(function(idx, val) {
var $$ = $(val);
var key = $$.text();
header_idx[key] = idx;
});
return header_idx;
}
解决方案
您可以在没有该类的情况下查找第一个td
,然后获取其父级:
var header = $("table#" + id + " thead tr td:not(.HD1):eq(0)").parent();
但是,这可能会导致获得第三/第四/等行。如果您必须始终返回第二行,即使这些单元格也都具有 HD1 类:
var header = $("table#" + id + " thead tr:eq(0)");
var header_fields = $("td", header);
if (header_fields.length && header_fields.length == header_fields.filter(".HD1").length) {
header = header.next();
header_fields = $("td", header);
}
注意::eq()
使用从零开始的索引,因此用于eq(0)
选择第一个元素。
推荐阅读
- python - Python是否可以将元组坐标存储在嵌套字典中并从嵌套字典中的单个字典访问单个坐标?
- php - Imagick 不添加元数据 PHP
- powershell - 如何检查任务是否在我的用户上运行?
- azure - 如何在 azure function v1 中使用最新的 SharePoint PnP Core Online
- python - 我正在尝试在页面上显示某些项目,但我的 if 语句有问题
- typescript - Studio Code - 关闭自动删除空格
- c++ - 我如何在 C++ 中使用 Cin 在 1 行中输入?
- movilizer - 如何在 Movlet 表单视图中显示 mysql(longblob 类型字段)的图像
- python - 我在 rasa 聊天机器人安装中遇到了一些问题
- python - 将一行上的输入分配给它的行号?