[英]Javascript to check if <td> is of a particular background colour
刚刚掌握javascript和jquery
我根据其值设置表格单元格的backgroundColor
。
$("td.ms-vb2").filter(function(index){return $(this).text() === "Yes";}).css("backgroundColor", "#81F79F");
$("td.ms-vb2").filter(function(index){return $(this).text() === "No";}).css("backgroundColor", "#FE642E");
有人能告诉我怎么能写一个if-else语句,如果颜色是#81F79F
做一个警报,如果颜色是#FE642E
,再做一个警告
要么
如果单元格中的值为“是”,则执行警报,如果单元格中的值为“ 否” ,则执行另一个警报
非常感谢
从元素中获取颜色,然后根据需要进行检查。 由于jQuery似乎将background-color
作为rgb颜色返回,因此您必须将其转换为十六进制,或者检查等效的rgb。
如果您想要一个函数来转换颜色值,请查看此问题 。
var color = $('td.ms-vb2').css('background-color');
if (color == 'rgb(129,247,159)')
alert('#81F79F');
else if (color == 'rgb(254,100,46)')
alert('#FE642E');
或者,您可以执行类似的代码检查文本(在这种情况下,这可能是更简单的解决方案)
var value = $('td.ms-vb2').text();
alert(value == "Yes" ? "Yes!" : "No...");
你最好的选择是如果它是肯定的话,可以在td中添加一个类,如果不是,则可以添加另一个类。 然后测试该类的基础存在。
例如,添加affirmative
或negative
的类
然后在你的CSS中有一个肯定或否定的风格,并在那里声明背景颜色。 这样,你所有的js需要做的就是改变这个类
您可以使用each()
函数执行所需的所有操作:
设置单元格背景颜色:
$('td.ms-vb2').each(function(){
var cell = $(this)
if (cell.text() == "Yes")
cell.css('background-color', '#81F79F');
else if (cell.text() == "No")
cell.css('background-color', '#FE642E');
});
显示提醒:
$('td.ms-vb2').each(function(){
var color = $(this).css('background-color');
if (color == '#81F79F')
alert('#81F79F');
else alert('another color');
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.