我要突出显示表行,该行具有由数据库生成的相同类(所以我不知道确切会出现什么类)
以下是HTML标记
到目前为止,我已经尝试过:-
<script type="text/javascript">
$(document).ready(function() {
$('tr:gt(0)').each(function () {
var txt = $(this).find("td:last").text();
txt = parseInt(txt);
if (txt = txt) {
$(this).addClass("alert alert-danger");
}
});
});
</script>
答案 0 :(得分:1)
您使用赋值运算符而不是比较运算符
更改此
if (txt = txt)
对此
if (txt == txt)
您当前正在做的事情总是会处于真实状态
var txt = $(this).find("td:last").text();
txt = parseInt(txt);
因为您获得了文本并将其自身解析为number
值。然后匹配相同的txt
值。这将永远是true
更新
您可以根据以下类别名称对行进行分组,但是可以根据需要更改颜色。
$('tr:gt(0)').each(function () {
var rowClass= $(this).attr('class');
var back = ["#ff0000","blue","gray"];
var rand = back[Math.floor(Math.random() * back.length)];
if(rowClass.length>0){
$('tr.'+rowClass).css('background-color',rand)
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table border="1">
<tr class="">
<td>Hello</td>
</tr>
<tr class="">
<td>Hello</td>
</tr>
<tr class="7998">
<td>Hello</td>
</tr>
<tr class="7998"><td>Hello</td></tr>
<tr class="7998"><td>7998</td></tr>
<tr class="8142"><td>Hello</td></tr>
<tr class=""><td>Hello</td></tr>
<tr class=""><td>Hello</td></tr>
<tr class="7730"><td>Hello</td></tr>
<tr class="7730"><td>Hello</td></tr>
<tr class="7730"><td>7730</td></tr>
<tr class="7730"><td>Hello</td></tr>
<tr class="7957"><td>7957</td></tr>
<tr class=""><td>Hello</td></tr>
</table>
答案 1 :(得分:1)
您看起来像这样吗?
此示例将突出显示表中具有多个相同名称的任何行。
如果它是单/无,则不会突出显示它。
HTML
<table class="list">
<tr class="8008"><td>8008</td></tr>
<tr class="8002"><td>8002</td></tr>
<tr class="8008"><td>8008</td></tr>
<tr class="8088"><td>8088</td></tr>
<tr class=""><td></td></tr>
<tr class="8077"><td>8077</td></tr>
<tr class="8077"><td>8077</td></tr>
</table>
JAVASCRIPT
var arr1 = [];
var arr2 = [];
$(".list tr").each(function(){
arr1.push($(this).attr("class"));
});
console.log(arr1.length);
$(".list tr").each(function(index){
var newArray = arr1.slice();
newArray.splice(index, 1); // remove index value from an array, so this index != match its own
console.log(newArray);
if ($.inArray($(this).attr("class"), newArray ) !== -1)
$(this).addClass("alert");
});
还有JSFiddle示例:http://jsfiddle.net/synz/6284poux/