SharePoint JS Link 之(二) 改变表单中column的颜色

按照前一篇(

SharePoint JS Link 之(一) 改变column的颜色

)修改之后,查看文档属性,发现Language列颜色并没有变:

要想让这个颜色变,需要做一些修改。为displayForm注册一个事件:

(function () {

   var FieldContext = {};
   FieldContext.Templates = {};
   FieldContext.Templates.Fields = {
       //为我们要修改颜色的列,定义一个重写样式的方法
       "Language": { "View": FieldTemplate,"DisplayForm": DisplayTemplate}
   };

   //注册Context给SharePoint
   SPClientTemplates.TemplateManager.RegisterTemplateOverrides(FieldContext);
})();

然后再添加一个实现函数。这里我们为Language列设置背景色。

function DisplayForm(ctx) {

   var Language = ctx.CurrentItem[ctx.CurrentFieldSchema.Name];

   switch (Language) {
       case "English":
           return "<span style='background-color :#D9D919'>" +Language + "</span>";
           break;
       case "Korean (Korea)":
           return "<span style='background-color :#2D882D'>" +Language + "</span>";
           break;
    }
}

最终的代码是:

function DisplayForm(ctx) {

   var Language = ctx.CurrentItem[ctx.CurrentFieldSchema.Name];

   switch (Language) {
       case "English":
           return "<spanstyle='background-color :#D9D919'>" + Language +"</span>";
           break;
       case "Korean (Korea)":
           return "<span style='background-color :#2D882D'>" +Language + "</span>";
           break;
    }
}

保存文件,上传到Style Library里(原来的地方)。

找到任何一个列表项,进去到view properties页面,然后edit page,给display form的webpart属性里,加JSLink。

就会看到下面的效果:

时间: 2024-12-11 19:36:54

SharePoint JS Link 之(二) 改变表单中column的颜色的相关文章

MSCRM4.0如何使js事件在批量编辑表单中触发

MSCRM4.0如何使js事件在批量编辑表单中触发 MSCRM4.0如何使js事件在批量编辑表单中触发 MSCRM3.0我们可以通过在onload事件加入以下代码来控制某个属性为只读.crmForm.all.filed.Disabled = true;Update到4.0后我们会发现批量编辑表单的相应属性并没有Disabled,查了4.0的sdk,里面讲由于安全的原因ms取消了bulk edit form事件功能.默认bulk edit form事件功能并没有开启,但是我们可以通过修改实体xml

SharePoint JS Link 之(一) 改变column的颜色

在SharePoint2013之前,想要修改列表项表单的样式,是一件非常痛苦的事情.一般来说,任何的列表都包含三种表单: 1.      新建列表项(new) 2.      编辑属性(edit properties) 3.      查看列表项(view properties) 除此之外,还有一种显示方法,就是在视图(view)显示,比如: 在SharePoint 2013里,新加了一个功能叫JSLink,有了它,不用写任何后台代码,只需要写JS就能修改列表项的显示了. 比如,我想修改Lang

SharePoint JS Link 之( 三)如何设置JSLink的引用

JSLink文件写好之后,除了手动部署到SharePoint里,还有其他办法吗? 有多种方法可以设置JSLink的JavaScript 文件的引用: server object model WindowsPowerShell Features里面的Element.xml文件 Web Part 属性 client object model. 下面是一些例子: Server Object Model: 先找到目标表单,然后再通过JSLink属性来设置: SPWeb web= SPContext.Cu

SharePoint JS Link 之(五)关于JSLink的一些FAQ

关于JSLink的一些FAQ 1.    JSLink可以被应用在哪里? JSLink 可以被应用到fields, Web Parts, 列表表单(list form), 视图(view)和内容类型(content type). 2.    JSLink文件可以放到哪里? JSLink可以放到SharePoint的任何的文档库里,或者layout文件夹下.放到不同的位置,在引用的时候,前缀也不一样: § ~site-表示要引用的JSLink文件在当前站点下 § ~sitecollection-表

SharePoint JS Link 之(四)JSlink常见例子和代码下载

MSDN上有很多关于JSLink的示例代码可供下载. 下面举几个常用的例子. 1.      为文件加图标 下载地址:https://code.msdn.microsoft.com/office/Client-side-rendering-code-97e27fa1 2.      柱状图显示百分比 https://code.msdn.microsoft.com/office/Client-side-rendering-code-f1068b4b 3.      正则表达式验证邮件地址 http

玩转web之JQuery(二)---改变表单和input的可编辑状态(封装的js)

var FormDeal = { /** * 功能 :将表单的所有input都设为可编辑的 *@param 要操作表单的id */ formWritable: function (formId) { $("#"+formId+" input,textarea").removeAttr("readonly"); $("#"+formId+" input,textarea").css('backgroundCo

Js实现表单中的checkbox对勾选中效果

<!doctype html> <html lang="en-US"> <head> <meta http-equiv="Content-Type" content="text/html; chaRset=gb2312" /> <title>JS实现单个图片选中美化框</title> <style type="text/css"> body,

Sharepoint 2013 列表使用JS Link

使用JS Link可以向Sharepoint List注册脚本,重写Field模板,使得对于符合条件的字段改变格式和样式.但是有一个问题是,页面postback的话,JS不会被触发,不知道怎么解,有知道的留言下,谢谢. webpart中或者是列表中添加JS Link JS Link地址的格式如下,不能写相对路径或者绝对路径,不然Alert不出来的. ~sitecollection/SiteAssets/js/xxxxxx.js 实例代码,功能是,一个Url 类型的字段,如果字段的文本日期是这个月

sharepoint 2013基于AD的Form表单登录(二)——form登录页面自定义

配置好了sharepoint 2013基于AD的Form登录,只是成功了第一步,如何自定义登录页呢?特别是不要出现sharepoint2013自带登录页面,每次登录前还需要选择是否是form或者windows验证. 打开vs2012新建sharepoint 2013 project,在layouts目录下添加application page,页面命名为CustomLogin.aspx. 前台页面:为避免母版页中其他控件影响,注意继承的是simple.master         后台页面:继承F