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.Current.Web; SPListlist = web.Lists.TryGetList("MyTasks"); if (null!= list) { SPForm newForm = list.Forms[PAGETYPE.PAGE_NEWFORM]; if (null!= newForm) { newForm.JSLink = "~/mycustom.js"; } }
Windows PowerShell:
和Server Object Module的逻辑一样:
$web =Get-SPWeb $field =$web.Fields["MyCustomField"] $field.JSLink= "~/layouts/mycustom.js" $field.Update() $web.Dispose()
Element.xml:
先添加一个Field节点,然后设置JSLink属性:
<FieldID="{eb3eed37-961b-41bd-b11c-865c16e47071}" Name="MyCustomField"DisplayName="Custom Columns" Type="Text"Required="FALSE" Group="JSLink Demo" JSLink="~site/stylelibrary/JSLinkDemo/jquery-1.10.2.min.js| ~site/stylelibrary/JSLinkDemo/customview.js"> </Field>
这里注意一下,使用|符号,可以添加多个JS文件。
Web Parts 属性:
在页面上进入编辑模式,然后找到Web Part, 然后编辑属性,在Miscellaneous里面能找到JSLink的属性,在这里设置。
The Client-Side Object Model (CSOM):
你可以使用CSOM设置field的JSLink. 记住不能使用JaveScript直接修改Site column的属性,你需要在List里更新。如果你尝试更新site column的属性,你会得到下面的错误:
This functionality is unavailable for fields not associated with a list...
JavaScript CSOM:
fieldCollection= taskList.get_fields(); this.oneField= fieldCollection.getByInternalNameOrTitle("MyCustomField"); this.oneField.set_description("MyNewFieldDescription"); this.oneField.update();
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。