如果状态为已接收,则背景颜色为绿色
If the status is RECIEVED then background colour is Green
如果第 7 列中的状态包含具有“已接收”值的行,我想突出显示绿色行。
下面的代码是将与 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
screenshot of the search panel
我哪里错了?
我认为您的脚本中没有使用 row
。而且,在这种情况下,下面的修改怎么样?
发件人:
if (l7Column.innerHTML = r[6] === "RECEIVED") row.style.backgroundColor = "green";
收件人:
if (r[6] === "RECEIVED") tr.querySelector("tr").style.backgroundColor = "green";
已添加:
关于您接下来的新问题,
you are so great in script :) than you. it worked, I have a another query, The status doesn't only contain the word RECIEVED but sometime it may have some other words like RECIEVED TODAY or RECIEVED YESTERDAY, in that case how should the script change?
当r[6]
为RECIEVED TODAY
和RECIEVED YESTERDAY
时,您想将背景颜色设置为绿色。这样的话,下面的修改怎么样?
发件人:
if (l7Column.innerHTML = r[6] === "RECEIVED") row.style.backgroundColor = "green";
收件人:
if (["RECIEVED TODAY", "RECIEVED YESTERDAY"].includes(r[6])) tr.querySelector("tr").style.backgroundColor = "green";
或者,当r[6]
包含RECIEVED
时,你想设置背景颜色,下面的修改如何?
收件人:
if (r[6].toString().includes("RECIEVED")) tr.querySelector("tr").style.backgroundColor = "green";
注:
- 当我看到你的问题时,你正在使用
RECEIVED
。但是在您的回复中,您使用 RECIEVED
。我认为 RECEIVED
的拼写与 RECIEVED
不同。在此附加修改中,使用了 RECIEVED
。请注意这一点。
如果第 7 列中的状态包含具有“已接收”值的行,我想突出显示绿色行。
下面的代码是将与 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
screenshot of the search panel
我哪里错了?
我认为您的脚本中没有使用 row
。而且,在这种情况下,下面的修改怎么样?
发件人:
if (l7Column.innerHTML = r[6] === "RECEIVED") row.style.backgroundColor = "green";
收件人:
if (r[6] === "RECEIVED") tr.querySelector("tr").style.backgroundColor = "green";
已添加:
关于您接下来的新问题,
you are so great in script :) than you. it worked, I have a another query, The status doesn't only contain the word RECIEVED but sometime it may have some other words like RECIEVED TODAY or RECIEVED YESTERDAY, in that case how should the script change?
当r[6]
为RECIEVED TODAY
和RECIEVED YESTERDAY
时,您想将背景颜色设置为绿色。这样的话,下面的修改怎么样?
发件人:
if (l7Column.innerHTML = r[6] === "RECEIVED") row.style.backgroundColor = "green";
收件人:
if (["RECIEVED TODAY", "RECIEVED YESTERDAY"].includes(r[6])) tr.querySelector("tr").style.backgroundColor = "green";
或者,当r[6]
包含RECIEVED
时,你想设置背景颜色,下面的修改如何?
收件人:
if (r[6].toString().includes("RECIEVED")) tr.querySelector("tr").style.backgroundColor = "green";
注:
- 当我看到你的问题时,你正在使用
RECEIVED
。但是在您的回复中,您使用RECIEVED
。我认为RECEIVED
的拼写与RECIEVED
不同。在此附加修改中,使用了RECIEVED
。请注意这一点。