嗨thanx帮我解决上一个问题......这对我帮助很大...... 但现在我面临另一个问题, 我能够每5秒刷新一次“表格”(这是我的代码)
function GetStatus() {
$.ajax({
url: "/Site/StatusReport/",
type: "GET",
data: '',
contentType: "application/json",
success: function (result) {
// var type = $.parseJSON(result);
var row = "";
$(result).each(function () {
// row += "<tr><td>" + this.SiteId + "</td></tr></br>";
// row += "<tr><td>" + this.SiteName + "</td></tr>";
// row += "<tr><td>" + this.SiteStatus + "</td></tr>";
changeStatus(this.SiteId, this.SiteName, this.SiteStatus);
});
// $("#sometable").html(row);
}
});
}
使用以下代码将json数据渲染到表中
<table id="sometable" >
<tr>
<th></th>
<th>SiteName</th>
<th>SiteStatus</th>
<th></th>
</tr>
<%foreach (var item in (List<MvcList.Models.CenterStatus>)ViewData["table"])
{ %>
<tr id ="<%= item.SiteId%>">
<td>
<img src='../../Content/<%= item.SiteName%>.png'/>
</td>
<td>
<%= item.SiteName%>
</td>
<td>
<%= item.SiteStatus %>
</td>
</tr>
<%} %>
</table>
但现在我需要根据其值更改特定SiteStatus的颜色(例如,如果数据库中的站点状态为“Low Tickets”,我想更改该特定sitestatus的颜色... 我已将此用于此
function changeStatus(data1, data2, data3) {
if (data3 = "Low Tickets") {
// $("#sometable[id='" + data1 + "']tr td:nth-child(2)").addClass("LowTicket");
// $("#sometable tr:nth-child(3)").addClass("LowTicket");
// $("#sometable tr:nth-child(4)>td:nth-child(3)").addClass("LowTicket");
$('table #sometable tr:nth-child(' + data1 + ')>td:nth-child(3)').addClass("LowTicket");
}
}
但代码无效。我该如何解决这个问题?
答案 0 :(得分:0)
我认为应该是
function changeStatus(data1, data2, data3) {
if (data3 = "Low Tickets") {
$('#sometable tr#' + data1 + '>td:nth-child(3)').addClass("LowTicket");
}
}
请参阅此jsFiddle
修改强>
如果您想要突出显示所有LowLevel线条,只需使用
即可$("tr td:contains('LowTicket')").parent().addClass("LowTicket");
请参阅here
答案 1 :(得分:0)
我不知道你想做什么,但我想你想把第三列的行改为“LowTicket”类名;
如果是,
通过替换
,您可以在加载数据时调用一次javascript$(result).each(function () {
// row += "<tr><td>" + this.SiteId + "</td></tr></br>";
// row += "<tr><td>" + this.SiteName + "</td></tr>";
// row += "<tr><td>" + this.SiteStatus + "</td></tr>";
changeStatus(this.SiteId, this.SiteName, this.SiteStatus);
});
到
$('#sometable tr>td:nth-child(3)').each(function(){
if ($(this).html() == "Low Tickets"){
$(this).parent().addClass("LowTicket"); //For change class of parent rows
// Or
// $(this).addClass("LowTicket"); //For change class only status column
}
});
希望这对你有所帮助。