这是我的JQuery代码,我想将文本变量“text”中的文本与可能的CR状态(例如Approved Implemented)进行比较,但我不知道该怎么做。
_spBodyOnLoadFunctionNames.push("colouring");
function colouring(){
var $th = $("div[Name='CR_x0020_Status']").parent().css("background-color","#66CD00");
var $index = $th.index();
$th.parent().parent().children(".ms-itmhover").each(function(index, elem) {
var $div = $($(this).children("td").get($index));
var text = $div.text();
$("text:contains('Approved')").css("background-color","#66CD00");
})
}
我尝试了不同的选择,但我仍然不知道该怎么做!
致以最诚挚的问候,并提前感谢您 的Matthias
答案 0 :(得分:1)
您无法在jQuery选择器中放置变量。 $("text:contains(Approved)")
表示标记为text
且包含Approved
的元素。你可以写:
if (text.indexOf('Approved') > -1)
但是你根本不需要.each()
循环,你可以使用jQuery选择器完成所有操作:
$th.parent().parent().find(".ms-itmhover > td:contains(Approved)").css("background-color", "#66CD00");
答案 1 :(得分:0)
很难确切地说出你需要什么,但可能:
if(text == "Approved Implemented"){
...do more stuff here...
}
可能您需要复制现有的行并将其修改为另一种颜色:
$("text:contains('Approved')").css("background-color","#66CD00");
$("text:contains('Approved Implemented')").css("background-color","#0066CD");