我是sharepoint 2013的新手,我需要为doc库实现自定义的Icon叠加图像。仅当“完成”列的值为yes时,才会替换iconoverlay图像。无法访问服务器端,只能访问站点。
答案 0 :(得分:1)
不太了解您的问题,但是如果您想更改文档库的默认列表视图。您可以考虑使用JSLink,这是SP2013新功能的一部分。
我们的想法是将JS注入您的文档列表视图Web部件并进行一些UI更改。
我附上检查项目“已完成”列的示例,并修改列“名称”以产生粗体效果。
(function () {
// Create object that have the context information about the field that we want to change it's output render
var NameFiledContext = {};
NameFiledContext.Templates = {};
NameFiledContext.Templates.Fields = {
// Apply the new rendering for Priority field on List View
"LinkFilename": { "View": LinkFilenameFiledTemplate }
};
SPClientTemplates.TemplateManager.RegisterTemplateOverrides(NameFiledContext);
})();
// This function provides the rendering logic for list view
function LinkFilenameFiledTemplate(ctx) {
var completedColumn = "Completed";
var link = ctx.CurrentItem[ctx.CurrentFieldSchema.RealFieldName];
var completed = ctx.CurrentItem[completedColumn];
console.log(link);
// Return html element with appropriate color based on priority value
if(completed){
return "<strong>" + link + "</strong>";
}
return link;
}
创建一个JS并复制上面的代码,将其保存到SharePoint中。 转到要修改的文档库,编辑页面,编辑Web部件属性,转到Web部件属性面板的“其他”部分,并在JSLINK字段中包含“~scartcollection / xxxx链接到JS”。