SharePoint 2013列表中的多个内容类型的自定义编辑表单

时间:2015-01-24 14:58:12

标签: forms sharepoint sharepoint-2013 content-type client-side-scripting

在我最近的一个项目中,我目前陷入困境,我必须为SharePoint列表的每种内容类型创建多个自定义编辑表单。

示例,我有一个包含10种内容类型的SharePoint文档库。其中一个是继承自' Document'的基本内容类型。其他人继承了' Base'

现在,文档将使用BizTalk上传到网站,用户只会编辑文档,选择适当的内容类型,填写必填字段并保存。现在,由于文档将通过BizTalk上传,我们已决定删除“必需”'所有列的字段设置,只有在自定义编辑表单中,我们才需要验证它们。

到目前为止,我能够创建自定义编辑表单并连接到列表定义。我认为,我还将能够创建多个编辑表单,并与内容类型中的每个内容类型相关联。文件。但是,我如何能够展示“内容类型”#39;顶部的选择字段,并在每个页面中重定向到适当的编辑表单?

我正在考虑创建一个选择框,使用列表中的所有可用内容类型加载它,并选择项目更改事件我可以重定向到适当的编辑页面。但是,这是一种正确的方法吗?

考虑到我的解决方案,我必须创建10个自定义编辑表单,我必须手动设置所有字段,这非常繁琐。有没有简单的方法呢?

请注意,我必须根据所选的内容类型向编辑表单添加自定义客户端验证。

此外,要求是在客户端执行大部分操作。即加载项目,验证,保存到SharePoint等。我正在使用Knockout + jQuery完成此任务。

提前致谢。

UBK

1 个答案:

答案 0 :(得分:0)

如果在“库设置” - >“高级”中允许“内容类型管理”,则用户应该能够使用标准的SharePoint生成的“编辑”表单来更改内容类型,并且有一个下拉列表在顶部。

我会为您的Biztalk上传创建一个新内容类型,其中包含您需要的所有字段,但不需要。在其他内容类型中,您可以根据需要保留所需的标记。

BTW,在Office365文档库中,您不必执行最后一步,有一个“未知内容类型”'您可以为此目的添加到库中。不确定在某种程度上可以在本地SP2013上使用。

现在你只需要将jQuery魔法添加到一个表单中。使用SharePoint的优势在于它支持所有字段类型,验证规则等。