我是JS的新手,所以请耐心等待我。我正在制作JSLink文件,以将条件格式添加到我的SharePoint页面。
我的SharePoint页面中有一个日期字段(在Chrome调试器模式下查看):
"Calibration_x0020_Due2": "3\u002f31\u002f2020",
我想进行一些代码检查,检查日期是否在今天的日期之前30天之后(使背景变成红色)。如果日期比今天的日期早30天以上,则会显示为绿色。
我正在修改一个函数,该函数已应用条件格式,具体取决于在另一个字段中显示的单词。我不确定如何检查日期。
(function () {
var statusFieldCtx = {};
statusFieldCtx.Templates = {};
statusFieldCtx.Templates.Fields = {
"Calibration_x0020_Due2": { //The internal name of that column.
"View": StatusFieldViewTemplate
}
};
SPClientTemplates.TemplateManager.RegisterTemplateOverrides(statusFieldCtx);
function StatusFieldViewTemplate(ctx) { //Function to change the status styling
var statusValue = ctx.CurrentItem[ctx.CurrentFieldSchema.Name]; //To get the current item's status value.
if (statusValue < "NOT SURE WHAT TO PUT HERE") {
return "<div style='background-color:red;color:white'>" + statusValue + "</div>";
}
if (statusValue >= "NOT SURE WHAT TO PUT HERE") {
return "<div style='background-color:green;color:white'>" + statusValue + "</div>";
}
else{
return statusValue;
}
}
})();
显然,数学很明显。我只是不知道如何从字符串中提取日期?我已经尝试过statusValue.getMonth()
之类的方法,但是它指出.getMonth is not a function
以及其他错误。
有什么想法吗?