Sharepoint 2010 企业版。这是word文档的文档库。我有一些由工作流程设置的字段,我希望最终用户看到但无法编辑。

我本来打算在正确的表单上使用 JQuery,但字段仍然加载到 Word 的文档信息面板中。

我发现内容类型设置下的隐藏字段会将其从 DIP 中删除,但现在它不在 dispform 上。我希望隐藏选项将其隐藏在 HTML 中(这样我就可以用 Jquery 显示它),但看起来它根本没有呈现。

那么如何在 dispform 中显示隐藏在内容类型中的字段呢?

或者

如何在Word中完全隐藏DIP?(如果有某种方法可以将其锁定在 Word DIP 中,我可以选择字段为可选字段并用脚本隐藏它)。我在 infopath 中尝试了自定义 DIP,但这会引发错误,因为我们的最终用户没有 infopath,因此自定义 DIP 将无法加载。

谢谢!

有帮助吗?

解决方案

我在处理另一个项目时偶然发现了下面的 powershell 脚本。我添加它是为了防止其他人遇到与我相同的问题。模糊地做这做那对任何人都没有任何好处。

http://www.codeproject.com/Tips/647760/Hiding-SharePoint-list-field-column-from-newform-a作者:Praveen Chandran,2013 年 9 月 3 日

$WebUrl = "http://sitecollectionurl"
Write-Host "Opening Web" $WebUrl
$web = Get-SPWeb $WebUrl


$list = $web.Lists["ListName"];


$FieldGuid = New-Object System.Guid("cc9576b6-a166-47c9-bd89-7f47a3237e03");
$Field = $list.Fields[$FieldGuid];

$Field.ShowInNewForm = $false;
$Field.ShowInDisplayForm = $true;
$Field.ShowInEditForm = $false

$Field.Update();

$list.Update();
<span style="font-size: 14px; white-space: normal;">
</span>

在这里,替换 $WebUrl 替换为您的网站集 URL,并将 "ListName" 与您的 SPList 名称。

并更换Guid "cc9576b6-a166-47c9-bd89-7f47a3237e03" 以及要隐藏的字段的 id。

要获取字段的 id,您可以使用“SharePoint Manager”工具。它来自 codeplex,而且是免费的。

其他提示

如果列是您创建的自定义列,则应使用showinfiledlg=“false”从DIP中隐藏它。使用showindiplayform=“true”仍将在显示形式中显示它。

http://msdn.microsoft.com/en-us/图书馆/办公室/ aa543225.aspx

许可以下: CC-BY-SA归因
scroll top