SharePoint js操作原生的New/Edit表单
2014-01-03 17:26
405 查看
列表的表单,有个类似的需求:在New需隐藏特定字段,Edit时显示。
默认是New/Edit表单的字段是一样,就算在Content type 是隐藏也是同时影响两个表单。
如何做到仅仅在New时隐藏呢?
思路:在SharePoint Designer中,修改列表的New表单,加入JS,控制CSS属性达到效果。
其中有两点:
1. JS代码段应该放在那里?
2. 怎么定位到字段,代码如何写?
以下方法使用的JQuery库,需要引入js。例子中已经在母版页中引入了。
步骤:
1. 在目标列表中,点击“新建项目”,在Ribbon中点击“编辑页面”,“添加Web部件”,加入“内容编辑器”WebPart,保存页面并退出。
![](http://images.cnitblog.com/blog/371399/201401/03172055-48af567f9a414cdfa83dd0d189254d24.png)
注意:默认新建项目时是弹出层方式,不能编辑页面,所以先改页面方式。在列表设置-->高级设置 中改,如下图:
![](http://images.cnitblog.com/blog/371399/201401/03172055-073ab301ad7542a8ab75f6f91391d8f6.png)
2.使用SharePoint Designer打开网站,找到目标列表,点开,找到New表单,右键“在高级模式下编辑文件”
![](http://images.cnitblog.com/blog/371399/201401/03172055-6dc65e44ef854ef3acda109f5cd5ba84.png)
3.找到刚添加的“内容编辑器”WebPart,在<Content>节点中间,添加JS代码:
![](http://images.cnitblog.com/blog/371399/201401/03172056-0e871812a91d4f7690f9f7fa6c831dd2.png)
JS参考代码如下:自行引入JQuery库
JS 获取Dom之后,就可以隐藏,禁用,改背景色等。
全文完!
默认是New/Edit表单的字段是一样,就算在Content type 是隐藏也是同时影响两个表单。
如何做到仅仅在New时隐藏呢?
思路:在SharePoint Designer中,修改列表的New表单,加入JS,控制CSS属性达到效果。
其中有两点:
1. JS代码段应该放在那里?
2. 怎么定位到字段,代码如何写?
以下方法使用的JQuery库,需要引入js。例子中已经在母版页中引入了。
步骤:
1. 在目标列表中,点击“新建项目”,在Ribbon中点击“编辑页面”,“添加Web部件”,加入“内容编辑器”WebPart,保存页面并退出。
![](http://images.cnitblog.com/blog/371399/201401/03172055-48af567f9a414cdfa83dd0d189254d24.png)
注意:默认新建项目时是弹出层方式,不能编辑页面,所以先改页面方式。在列表设置-->高级设置 中改,如下图:
![](http://images.cnitblog.com/blog/371399/201401/03172055-073ab301ad7542a8ab75f6f91391d8f6.png)
2.使用SharePoint Designer打开网站,找到目标列表,点开,找到New表单,右键“在高级模式下编辑文件”
![](http://images.cnitblog.com/blog/371399/201401/03172055-6dc65e44ef854ef3acda109f5cd5ba84.png)
3.找到刚添加的“内容编辑器”WebPart,在<Content>节点中间,添加JS代码:
![](http://images.cnitblog.com/blog/371399/201401/03172056-0e871812a91d4f7690f9f7fa6c831dd2.png)
JS参考代码如下:自行引入JQuery库
<![CDATA[<script type="text/javascript"> function GetNodeByInternalName(internalName) { var returnVal = null; $("td.ms-formbody").each(function(){ try{ var patt = new RegExp('FieldInternalName="' + internalName + '"' ,"i"); if(patt.test($(this).html())) if(returnVal == null) { returnVal = $(this); return false; } } catch (err) {} }); return returnVal; } $(document).ready(function(){ //隐藏column GetNodeByInternalName("StartTime").parent().hide(); }); </script>]]>
JS 获取Dom之后,就可以隐藏,禁用,改背景色等。
全文完!
相关文章推荐
- Sharepoint JSCOM 列表操作
- [置顶] Ajax模式Edit页面支持JS,操作页面表单AjaxEdit.js
- SharePoint JS Link 之(二) 改变表单中column的颜色
- SharePoint 2013 使用JQuery 一些记录如(SharePoint js 获得当前用户)等基本操作。
- 原生js Ajax操作
- 2016.06.17廖雪峰JS__学习笔记(操作表单)__P13
- 原生JS封装_new函数实现new关键字的功能
- 配置SharePoint Foundation 2010基于表单的验证支持
- js原生dom操作
- jQuery第二课 ——节点选择、元素创建与操作、包装对象、jq转原生js
- 蓝鸥原生JS:DOM操作
- SharePoint PowerShell命令系列 (3) 操作WSP解决方案包的相关命令
- SharePoint PowerShell命令系列 (9) New-SPWeb
- C# 对sharepoint 列表的一些基本操作,包括添加/删除/查询/上传文件给sharepoint list添加数据
- JS中用document对象操作form表单 案例
- 原生JS的对象常用操作总结
- 利用原生js和jQuery实现单选框的勾选和取消操作的方法
- JS中常见原生DOM操作API【总结整理)
- Createsite:Stsadm 操作 (Windows SharePoint Services)
- JS常见操作,日期操作,字符串操作,表单验证等