Sharepoint 2013计算字段作为超链接呈现为文本

时间:2017-06-28 11:50:49

标签: hyperlink sharepoint-2013 calculated-field

我在Sharepoint 2013中有一个专栏,并将类型设置为'计算'。我已将数据返回类型设置为整数(附加图片),以便该字段是超链接。 Calculated field - setup

在所有环境(开发和生产)和浏览器(chrome,firefox,IE)中,所有工作都运行了一年多,直到最近用户报告超链接不再可点击并显示为文本(附加图片)。检查元素,揭示被视为文本的价值。 Calculated field - as displayed on UI

我花了一些时间来简化公式,删除字段并使用一个简单的元素导航到谷歌,但还没有找到解决方案。我怀疑可能有一个Sharepoint更新处理公式,不同地用双引号在其周围的元素内创建文本。

2 个答案:

答案 0 :(得分:1)

经过研究,我找到了问题的原因和解决方案。

<强>原因

SharePoint更新删除了计算字段为我们设置标记的功能,并在Handling HTML markup in SharePoint calculated fields中进行了解释。

<强>解决方案

我找到了JSLink的解决方案。打开上面的链接后,有一些使用JSLink的例子。通过一些游戏,我设法将计算字段作为超链接。步骤很简单。

  1. 使用代码创建一个js文件 - 在我的例子中,我创建了一个超链接,该超链接使用当前项目的值发布到另一个列表。

  2. 复制js文件的链接位置。

  3. 在视图的Web部件上引用js文件,在Miscellaneous一节下。

  4. 瞧!

  5. 注意:在脚本中,字段名称必须是内部字段名称,这使我的速度降低了很多。获取内部字段名称,打开列表设置,将鼠标悬停在所需字段上,在浏览器的左下角,您将获得内部字段名称(字段=此处为内部字段名称)。

    可以找到JSExample here

    另一篇有用的读物​​here

答案 1 :(得分:0)

正如原始海报的后续行动所述,截至2017年6月,您不能再这样做了。

对于SharePoint Online,替代方法是在页面上嵌入一些JavaScript或使用新的SharePoint PnP Fx Extensions。如果您有自己的SharePoint Server,则可以使用API​​ [即通过PowerShell]修改Web对象的CustomMarkupInCalculatedFieldDisabled属性。

我需要更强大的解决方案,因此我创建了一个SharePoint扩展来执行此操作。你可以view it from GitHub。说明书应该可以在几分钟内启动并运行。我发现它比JavaScript替代方案更容易管理。