如果状态为RECIEVED,则背景颜色为绿色

如果第 7 列中的状态包含具有“RECIEVED”值的行,我想突出显示行颜色为绿色。

下面的代码是将与 Google 表格关联的搜索结果数据显示到 google webapp。

var searchResultsBox = document.getElementById("searchResults");
var templateBox = document.getElementById("rowTemplate");
var template = templateBox.content;

searchResultsBox.innerHTML = "";

resultsArray.forEach(function(r){

var tr = template.cloneNode(true);
var l1Column = tr.querySelector(".L1");
var l2Column = tr.querySelector(".L2");
var l3Column = tr.querySelector(".L3");
var l4Column = tr.querySelector(".L4");
var l5Column = tr.querySelector(".L5");
var l6Column = tr.querySelector(".L6");
var l7Column = tr.querySelector(".L7");
var l8Column = tr.querySelector(".L8");

l1Column.innerHTML = r[0];
l2Column.innerHTML = r[1];
l3Column.innerHTML = r[2];
l4Column.innerHTML = r[3];
l5Column.innerHTML = r[4];
l6Column.innerHTML = r[5];
l7Column.innerHTML = r[6];
if (l7Column.innerHTML = r[6] === "RECEIVED") row.style.backgroundColor = "green";
l8Column.innerHTML = r[7];


searchResultsBox.appendChild(tr);


});

}

我添加了这个if (l7Column.innerHTML = r[6] === "RECEIVED") row.style.backgroundColor = "green"; 但状态在第 7 列中显示为 false

搜索面板的屏幕截图

我哪里做错了?

回答

我认为row您的脚本中没有使用它。而且,在这种情况下,以下修改如何?

从:

if (l7Column.innerHTML = r[6] === "RECEIVED") row.style.backgroundColor = "green";
if (l7Column.innerHTML = r[6] === "RECEIVED") row.style.backgroundColor = "green";

到:

if (r[6] === "RECEIVED") tr.querySelector("tr").style.backgroundColor = "green";

添加:

关于您的以下新问题,

你在剧本方面比你厉害:)。它起作用了,我有另一个查询,状态不仅包含 RECIEVED 一词,而且有时可能包含其他一些词,例如 RECIEVED TODAY 或 RECIEVED YESTERDAY,在这种情况下,脚本应该如何更改?

r[6]RECIEVED TODAYand 时RECIEVED YESTERDAY,您想将背景颜色设置为绿色。在这种情况下,如何进行以下修改?

从:

到:

if (["RECIEVED TODAY", "RECIEVED YESTERDAY"].includes(r[6])) tr.querySelector("tr").style.backgroundColor = "green";

或者,在r[6]includes的时候RECIEVED,要设置背景色,下面的修改怎么样?

到:

if (r[6].toString().includes("RECIEVED")) tr.querySelector("tr").style.backgroundColor = "green";

笔记:

  • 当我看到您的问题时,您正在使用RECEIVED. 但是在您的回复中,您使用RECIEVED. 我认为的拼写RECEIVEDRECIEVED. 在这个额外的修改中,RECIEVED使用了。请注意这一点。
  • @James Anderson Thank you for replying. I'm glad your issue was resolved. About your new question, I added the modified script. Could you please confirm it? If that was not the direction you expect, I apologize.

以上是如果状态为RECIEVED,则背景颜色为绿色的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>