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—表示要引用的JSLink文件在当前站点所在的网站集下

§ ~layouts—表示要引用的JSLink在_layouts/15

§ ~sitecollectionlayouts—表示要引用的JSlink在当前网站集合的layouts文件夹下(比如/sites/mysite/_layouts/15).

§ ~sitelayouts—表示要引用的JSlink在当前站点的layouts文件夹下(比如site/mysite/mysubsite/_layouts/15).

3.    JSLink都能改哪些地方?

用于注册修改方法的template对象有以下属性:Header, Body,Footer, OnPreRender, OnPostRender, Group, Item and Fields。可以在这些地方做相应的重写,来改变显示样式

4.    要修改一个列表的所有表单,应该如何写?

如果要修改一个filed的在不同表单上的样式,可以按照下面的例子来写,分别是View, DisplayForm, EditForm, NewForm。

siteCtx.Templates.Fields= {
  //MyCustomField is the Name of our field
 'MyCustomField': {
 'View': customView,
 'DisplayForm': customDisplayForm,
 'EditForm': customNew,
 'NewForm': customEdit
  }
};

5.    JSLink vs. XSL/XSLT

JSLink相对于XSL/XSLT有一些优势。首先它使用的是JavaScript,绝大多数的Web
开发人员都很熟悉。XSLT在开发和调试上都比较难。因此JSLink可以减少开发时间和成本。

在客户端使用JavaScript, HTML和CSS来渲染,避免了对服务器的不必要的负载,提高了总体的加载速度,使页面有更好的响应。

再有就是,使用JSLink你可以定制化一个视图的所有的部分。比如,如果你只想定制化一个field,你只要重写这部分逻辑就可以,其他的部分还是按照以前的逻辑。使用JSLink,
你也可以使用JaveScript,包括一些流行的插件,比如jQuery。

当然,任何技术都有不足,JSLink也是。比如,如果用户的浏览器阻止了JaveScript,JSLink
就不好用了。使用XSLT的服务器端渲染,就不会有这个问题,但是会有效率问题。

如果一个用户的浏览器或者系统非常的旧,那么执行Script也会使秀安然速度下降。

最终,搜索引擎爬网的时候,更喜欢静态的html代码,而不是由Ajax/JavaScript生成的动态的内容。因此如果你的网站是面向公共的,那么JSLink并不是最好的选择。

时间: 2024-08-28 10:07:55

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

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

按照前一篇( SharePoint JS Link 之(一) 改变column的颜色 )修改之后,查看文档属性,发现Language列颜色并没有变: 要想让这个颜色变,需要做一些修改.为displayForm注册一个事件: (function () { var FieldContext = {}; FieldContext.Templates = {}; FieldContext.Templates.Fields = { //为我们要修改颜色的列,定义一个重写样式的方法 "Language&qu

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常见例子和代码下载

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

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

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

Sharepoint 2013 列表使用JS Link

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

【高德地图API】从零开始学高德JS API(五)路线规划——驾车|公交|步行

先来看两个问题:路线规划与导航有什么区别?步行导航与驾车导航有什么区别? 回答: 1.路线规划,指的是为用户提供3条路线推荐.[高德]在提供路线规划的时候,会提供用户自定义路线规划功能,这是别家没有做到的.导航,指的是为驾车用户提示路口信息,向左向右,进入匝道等信息. 2.我们这里说的步行导航和驾车导航,严格的说,应该是路线规划.从A地到B地,如果是驾车,路线规划会将公路路网做为搜索数据:如果是步行,过街天桥.地下通道.人行道做为搜索数据. ---------------------------

Ext JS学习第五天 Ext_window组件(一)

此文来记录学习笔记 •第一个组件:Ext.window.Window.对于组件,也就是Ext最吸引开发者的地方,那么我们要真正的使用Ext的组件,首先必须学会阅读API文档. –xtype:组件的别名 –Hierarchy 层次结构 –Inherited mixins 混入的类 –Requires 该组件需要使用的类 –configs:组件的配置信息 –properties:组件的属性 –methods:组件的方法 –events:组件的事件 •window组件常用属性和方法讲解: •confi

Ext JS学习第五天 Ext_window组件(二)

此文用来记录学习笔记 •上一讲我们已经学过了window的使用,那么在这将中,我们将结合然后把Ext中需要注意的地方,以及组建的使用给予介绍.indow做几个Web开发的经典示例. •ExtWeb实战300例: –例1:点击按钮打开一个window,window重复创建的问题 •重点分析:这个问题是初学者经常会犯错的地方,一般来说简单的代码不会产生此问题,但是如果以后代码复杂以后,这个问题如果发生调试起来会非常麻烦!! 附上栗子代码 1 Ext.onReady(function () { 2 3

Sharepoint2013搜索学习笔记之设置sharepoint网站内容源(五)

第一步,进入管理中心,点击管理应用程序,点击search service 应用程序进入到搜索管理配置页面,点击内容源 第二步,点击新建内容源,给内容源命名,在爬网内容类型中选sharepoint网站,输入sharepoint网址地址,注意下图 sps3的意思是对这个sharepoint网址进行人员搜索,如果需要对人员进行搜索,需要提前进行一些配置,参考如下链接: 在sharepoint中部署人员搜索 第三步,爬网计划点启用增量爬网,创建增量爬网计划,注意,完全爬网会对所有内容源进行爬网,增量爬网