我有一个javascript,它将从JSON中读取值,并在HTML页面中动态创建一个表。
<div style="width:700px;padding:20px;S">
<h1 style="text-align:center"><i style="color:#ccc">ALM Server Availability</i></h1>
<table id="records_table" class="table">
<tr>
<th>Server Name</th>
<th>Availability %</th>
</tr>
</table>
</div>
JQUERY:
function availshow(series) {
// 1. remove all existing rows
$("tr:has(td)").remove();
$.each(series.data.hostgroup.hosts, function (index, test) {
$('<tr>').append(
$('<td>').text(test.name),
$('<td>').text(parseInt((test.time_up/86400)*100)),
).appendTo('#records_table');
});
}
现在我需要检查条件(test.time_up/86400)*100) < 100
的值,然后我需要将该特定行变为红色。我怎样才能实现它。
答案 0 :(得分:2)
您可以执行此操作,循环浏览每个tr
,然后查找第二个td
值
$('#records_table tr').each(function() {
var $td = $(this).find('td:eq(1)');
var value = $td.text();
if (parseInt(value) < 100) {
$td.css('background-color', 'red');
}
});
答案 1 :(得分:1)
你的JQuery功能应该是这样的:
var i=0
function availshow(series) {
// 1. remove all existing rows
$("tr:has(td)").remove();
$.each(series.data.hostgroup.hosts, function (index, test) {
i=(test.time_up/86400)*100);
$("<tr"+(i < 100 ? "class:'redBlock'": "")+">").append(
$('<td>').text(test.name),
$('<td>').text(parseInt((test.time_up/86400)*100)),
).appendTo('#records_table');
});
}
然后使用您想要的所有样式在.css文件中创建该类:
.redBlock{
background-color:red;
}
希望我能提供帮助。 快乐编码:)