javascript - 使用 CSR 对 sharepoint 2013 上的列表进行条件格式化

标签 javascript sharepoint-2013

我正在尝试让条件格式在 Sharepoint 2013 上的列表上工作,我想要它做的是根据输入的内容更改优先级字段中单词的颜色,例如高=红色低=绿色中=橙色

我尝试了多种方法来做到这一点,并且看了很多教程,但由于我只有 JS 和 CSR 的基本知识,所以我发现这很难,我知道如何应用 JS 文件对于 Web 部件,我必须在 Web 部件编辑器的其他区域中链接文件的地址位置,这只是我遇到问题的代码。

这是我到目前为止所拥有的

 
(function () { 

    var priorityFiledContext = {}; 
    priorityFiledContext.Templates = {}; 
    priorityFiledContext.Templates.Fields = { 
        
        "Priority": { "View": priorityFiledTemplate } 
    }; 
 
    SPClientTemplates.TemplateManager.RegisterTemplateOverrides(priorityFiledContext); 
 
})(); 

function priorityFiledTemplate(ctx) { 
 
    var priority = ctx.CurrentItem[ctx.CurrentFieldSchema.Name]; 
  
    switch (priority) { 
        case "(1) High": 
            return "<span style='color :#f00'>" + priority + "</span>"; 
            break; 
        case "(2) Normal": 
            return "<span style='color :#ff6a00'>" + priority + "</span>"; 
            break; 
        case "(3) Low": 
            return "<span style='color :#cab023'>" + priority + "</span>"; 
    } 
} 

最佳答案

只要您使用英语标准任务列表,代码看起来就很好(如果没有,您必须将开关 block 中的优先级字符串更改为任务列表使用的任何内容)。

您可以使用例如简化部署 CSR 自定义Cisar Chrome 浏览器插件。它将浏览器窗口中写入的更改实时发布到服务器,并将动态创建的 Javascript 文件附加到浏览器中当前打开的列表(假设您有权这样做)。

关于javascript - 使用 CSR 对 sharepoint 2013 上的列表进行条件格式化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41567154/

相关文章:

javascript - 替换 JSON 中数组中的键和字符串

javascript - 如何使用 underscore.js 的 reduce 方法?

javascript - 如何用 Angular 限制输入数字范围

javascript - 如何在 SharePoint 2013 JSOM 中设置 URL 字段的值

javascript - 更改多行文本下的超链接顺序(增强型富文本)

javascript - SharePoint 在单击时传递文本框的值以更新列表列

javascript - 将返回值显示为文本

javascript - 通知在网络扩展 (Firefox) 中不起作用

javascript - 从 SharePoint 列表获取列表项时显示进度

html - 使用 CSS sprites 作为图像类型的输入