【发布时间】:2012-11-02 08:14:39
【问题描述】:
我们确实从 Tridion 5.3 升级到了 Tridion 2011 SP1。
在 Tridion 5.3 中,我们使用 VBScript 模板,作为此次升级的一部分,我们将现有的 VBScript 模板转换为复合组件模板。我们面临下面提到的两个关于 RTF 字段内容的问题。
问题 1:在我们现有的 RTF 字段内容中,我们在多个位置有空标签/HTML 标签。 eg.<a name="Contact" id="Contact"></a> 当我们使用复合组件模板(Tridion 2011 SP1 环境)发布内容时,上述锚标记将转换为<a name="Contact" id="Contact" />。这破坏了现有的 javascript 功能。为了克服这个问题,我们编写了 C# 函数来查找空标签并用 &nbsp; 替换内部文本,例如 <a name="Contact" id="Contact">&nbsp;</a>,然后一切正常。但是在 CT 级别为每个 RTF 字段调用此函数是一项很大的活动,因为我们有编号 Component Tempate。有没有更好的办法。
问题 2:在同一个 RTF 字段中,我们有类似 &#160; 的内容(可能是编辑从网络或其他地方复制粘贴了它),所以当我们尝试发布页面或组件时,它会因错误而失败。
JScriptException:Expression valueUnterminated String Constant.
是否有任何默认的 TBB 可以帮助解决问题?
【问题讨论】:
-
如果您不调用清理模板(默认完成操作的一部分),则应修复第一个问题
-
删除后清理模板问题依然存在。
-
在this question中查看自动关闭锚的其他选项。
标签: tridion tridion-2011