不确定这是否可行,或者我可能会采用错误的方式。我正在构建来自我的雇主的实时数据流,并且如果其中包含的数字大于5:00,则需要能够更改特定div的颜色。
因此,数据流的代码如下所示
<tr class="rowColour" style="background: #FFCFCF">
<td style="text-align: left;width: 25%">Firstname.Lastname</td>
<td style="width: 40%;">On Call (4:17 mins)</td>
<td style="width: 35%">Company 1</td>
</tr>
<tr class="rowColour" style="background: #FFCFCF">
<td style="text-align: left;width: 25%">Firstname.Lastname</td>
<td style="width: 40%;">On Call (0:49 mins)</td>
<td style="width: 35%">Company 1</td>
</tr>
所以基本上我需要查看括号中包含的内容(例如On call(0:49分钟))。因此,如果变成5分钟或更长时间,我需要颜色为红色。
但我真的不知道如何实现这一目标。使用jQuery包含选择器我能够为每个说“On Call”的人做这个,但是我需要它才能看到大于5分钟的那些。
这是我目前拥有的jQuery:
$(document).ready(function(){
$(".rowColour:contains(On Call)").css("color","red");
});
这可行吗?如果是这样,我该怎么做呢?任何帮助都将非常感激。
答案 0 :(得分:2)
您必须提取这些数字,并且5:00
可以转换为数字500
,您可以检查它是否位于过滤器内的上方或下方等。
$(document).ready(function(){
$(".rowColour").filter(function() {
var td = $('td:contains(On Call)', this);
if (td.length === 0) return false;
var time = td.text().replace(/\D/g, '');
return time >= 500;
}).css("color","red");
});