“创建”按钮,用于切换不包含特定文本颜色的表行的可见性
Create button that toggles visibility of table rows that do not contain specific text color
我正在使用DataTables jQuery插件来格式化<table>
,我想创建一个按钮来切换不包含<span>
#bfbfff 的任何<tr>
的可见性。该表的结构如下:
<a id="notes">Filter</a>
<table id="qpidvulh_to-do_list">
<tr>
<td>
<span style="color: #bfbfff">Content</span>
</td>
</tr>
<tr>
<td>
<span>Content</span>
</td>
</tr>
</table>
到目前为止,我想出的jQuery不起作用:
$("a#notes").on("click", function() {
if ($('#qpidvulh_to-do_list tr span:not').css('color') == '#bfbfff') {
$(this).parent("tr").toggle();
}
} );
JSFiddle
2 个问题:
1. 您没有导入 jQuery。
修复它。
2.跨度:不是正确的选择器
只需选择具有正确样式属性的所有范围即可。然后隐藏该范围的父<tr>
。
$("#qpidvulh_to-do_list tr td span[style='color:#b3b3ff;']").closest("tr").toggle();
编辑:
下面是隐藏的非彩色跨度的代码。
$("#qpidvulh_to-do_list tr").toggle();
$("#qpidvulh_to-do_list tr td span[style='color:#b3b3ff;']").closest("tr").toggle();
JSFiddle
可能有点
过头了,但有效(尽管在这种特殊情况下我找不到更短的解决方案)。问题是css('color')
以 RGB 格式返回颜色。
$("a#notes").on("click", function() {
$('#qpidvulh_to-do_list tr span').each(function(){
if ($(this).css('color') != 'rgb(191, 191, 255)') {
$(this).closest("tr").toggle();
}
})
});
编辑
即使 style 属性包含多个属性和空格,也可以使用它,例如:<span style="color : #bfbfff; font-size:20px;">
JSFiddle(更新)
相关文章:
- 使用JS如何动态更改显示的html文件中的文本背景颜色
- 高亮显示时编辑文本大小和颜色
- 使用CSS/JavaScript更改剑道图工具提示文本颜色
- mouseover和mouseleave文本颜色更改在指令链接中不起作用
- 如何在php中创建一个函数,该函数与文本区域一起工作,通过输入类似[color:red]的内容来打印具有等效颜色的文本
- HTML-从mysql生成的选择框中的一个选项更改文本区域的颜色
- 如果值为负数,如何更改文本的颜色
- 1种颜色的Javascript闪烁文本更长
- 如何更改圆环图中文本的颜色
- 如何在flash html5画布项目中动态更改文本颜色
- 单击时将文本的颜色更改为随机颜色(按钮)
- 使用JavaScript淡化文本颜色
- 在不更改边框颜色的情况下更改文本的颜色
- 使用Javascript切换文本颜色
- 我可以使用jqgrid的oncellselect事件根据单元格内容将文本颜色更改为蓝色吗
- 使用Javascript更改文本区域的颜色
- 如何使用颜色选择器来更改背景中的文本
- 内部 DIV 颜色文本在鼠标悬停时没有更改
- React Native TouchableHighlight字体颜色文本更改
- 邮件类型输入:如果邮件错误或正确,动态改变按钮的颜色/文本