SharePoint的列表具备了强大的功能,能够快速开发很多的数据录入场景,但是它也有不足的地方:
录入界面无法调整成用户想要的样子
无法对某些录入项做关联,比如无法判断结束时间应该大于开始时间;无法做到当用户选择了某个CheckBox,出现不同的录入项。
而这些场景是我们在给客户实施项目的时候,必须考虑的。用户接触到的录入界面不应该只是从上到下的简单布局,需要一种适合用户风格的布局方式。某些录入项
之间必须是关联出现。
由于SharePoint列表功能实在是强大,可以减少我们很大的工作量,不需要做录入、编辑、搜索界面。所以我们仍然是在SharePoint列表的基础上解决上面的问题。
解决思路如下:
制作一个代码自动生成的工具,能够根据列表的项设置,来自动生成一个User Control,这个User Control可以处理录入、修改、查看功能。
调整该User Control里,录入项的布局,用JQuery来控制某些逻辑。比如时间的比较,CheckBox选择不同导致出现不同的录入项。
将录入界面上的自动生成的WebPart关闭,把这个User Control用Web Part包含到页面上。
在实现过程中,发现SharePoint自带的一个WebControl,SharePoint:FormField是支持处理录入、修改、查看3种不同状态的。所以一个User Control就可以适应到多种情况。
效果如下图所示:
1。能够用JQuery控制显示风格的SharePoint列表录入界面,布局可以随意调整。
2。是否中标,导致了不同的录入项出现,这些都是用JQuery来控制。