如何使用Javascript
或在表格列标题中写入什么文本的基础上选择列中的单元格,例如“状态” jQuery
?
(详细信息,不是问题的一部分:我想稍后使用它根据单元格内容将背景色应用于该列中的单元格,以便例如“错误”将获得红色的背景色和“质量确定” '会是白色的。)
这是我为您准备的快速提琴。
的HTML
<table>
<tr>
<th>One</th>
<th>Two</th>
<th>Status</th>
</tr>
<tr>
<td>1</td>
<td>2</td>
<td>Bad</td>
</tr>
<tr>
<td>3</td>
<td>4</td>
<td>Good</td>
</tr>
</table>
JQUERY
$(function(){
var columnindex = $('th:contains("Status")').index();
if(columnindex != -1)
{
$('tr').each(function(){
var column = $('td', this).eq(columnindex);
switch(column.text())
{
case "Bad":
column.css({ backgroundColor: '#900' });
break;
case "Good":
column.css({ backgroundColor: '#090' });
break;
default:
break;
}
});
}
});
您可以更改颜色和正在搜索的文本,但是您应该能够了解发生了什么...
基本上,我们使用contains
选择器(https://api.jquery.com/contains-selector/)yp查找th
包含我们要查找的文本的,然后.index()
(http://api.jquery.com/index/)获得列索引。然后,我们循环的TR是一个使用.each
(https://api.jquery.com/jQuery.each/),并使用抢项目eq
(https://api.jquery.com/eq/)。然后,请为操纵CSStd
并设置其背景颜色属性。
要注意的一件事是,如果2列th
文本包含“状态”,您将面临问题!
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句