Javascript 我想隐藏特定单元格的表行
我创建了一个脚本,用于隐藏包含特定单词的行,在我的示例中,该单词是“活动的”。现在的问题是脚本只隐藏第一行,然后停止执行。所以基本上它是工作的,但是在隐藏第一行之后,它停止执行 欢迎提出任何建议Javascript 我想隐藏特定单元格的表行,javascript,jquery,html,for-loop,Javascript,Jquery,Html,For Loop,我创建了一个脚本,用于隐藏包含特定单词的行,在我的示例中,该单词是“活动的”。现在的问题是脚本只隐藏第一行,然后停止执行。所以基本上它是工作的,但是在隐藏第一行之后,它停止执行 欢迎提出任何建议 <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript" charset="utf-8"></script> </head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript" charset="utf-8"></script>
</head>
<body>
<table id="myTable">
<tr id="my">
<td>1</td>
<td>11</td>
<td >active</td>
</tr>
<tr id="my">
<td>2</td>
<td>22</td>
<td>active</td>
</tr>
<tr id="my">
<td>4</td>
<td>44</td>
<td>inactive</td>
</tr>
<tr id="my">
<td>5</td>
<td>55</td>
<td>inactive</td>
</tr><tr id="my">
<td>6</td>
<td>66</td>
<td>active</td>
</tr>
<tr id="my">
<td>7</td>
<td>77</td>
<td>inactive</td>
</tr>
</table>
<script>
var oTable = document.getElementById('myTable');
var row = "active";
var count=0;
var rowLength = oTable.rows.length;
//document.writeln("no fo row in table"+rowLength);
for (var i = 0; i < rowLength; i++)
{
var oCells = oTable.rows.item(i).cells;
var cellLength = oCells.length;
//document.writeln(count);
count=count+1;
for(var j = 0; j < cellLength; j++)
{
var cellVal = oCells.item(j).innerHTML;
// document.writeln("table values"+cellVal);
if(cellVal==row)
{
document.getElementById('my').style.display = 'none';
document.writeln("table values"+count+"<br/>");
}
else
{
}
}
}
</script>
1.
11
积极的
2.
22
积极的
4.
44
不活跃的
5.
55
不活跃的
6.
66
积极的
7.
77
不活跃的
var oTable=document.getElementById('myTable');
var row=“活动”;
var计数=0;
var rowLength=oTable.rows.length;
//document.writeln(“表中无fo行”+行长);
对于(变量i=0;i ”);
}
其他的
{
}
}
}
尽管您已经接受了答案,我还是建议您:
$('#myTable tr').filter(function(){
return $(this).find('td:last-child').text().toLowerCase() === 'active';
}).hide();
关于你的进一步问题(在对另一个答案的评论中):
只有一个想法可以帮助我,如果有更多的字,如活动,启用,禁用我必须比较,然后是怎样的代码
我建议采取以下方法:
var states = {
'active' : {
'display' : 'none'
},
'inactive' : {
'color' : 'orange'
}
};
$('#myTable tr td:last-child').each(function(){
var that = this,
$that = $(that);
$that
.parent()
.css(states[$that.text().toLowerCase()] || '');
});
.你能给我一些点击率吗……你的HTML无效;
id
只能使用一次。你应该使用一个类名。只要一个想法就能帮助我,如果有更多的单词,比如active,enable,disable,我必须比较代码是什么样的这个代码对于静态数据来说工作得很好,但问题是我的数据来自数据库,所以,基本上我想隐藏动态数据。有可能吗?动态数据??隐藏什么??这段代码对静态数据很有效,但问题是我的数据来自数据库,所以,基本上我想隐藏动态数据。有可能吗?是的,但是没有更多的信息,我不能说怎么做。你可能想发布一个关于这方面的新问题,包括相关细节。
var states = {
'active' : {
'display' : 'none'
},
'inactive' : {
'color' : 'orange'
}
};
$('#myTable tr td:last-child').each(function(){
var that = this,
$that = $(that);
$that
.parent()
.css(states[$that.text().toLowerCase()] || '');
});