2010-11-02 182 views
1

我无法设法使莲花笔记6.5电子邮件工作的JavaScript小工作。 我正在建设一个HTML,通过邮件发送它作为一个HTML,并在里面我想有一些链接来隐藏/显示几个div。 我尝试使用document.getElementById但是当我点击我有以下错误链接:Lotus Notes隐藏/显示div

"document.getElementById is not a function". 

我使用的是document.getElementById(id).style.display='none';隐藏它(如果我能管理DIV)的思想。

任何想法如何显示/隐藏我的div?

回答

2

Lotus Notes中的HTML引擎与浏览器中的HTML引擎完全不同。我相当肯定,当它说“document.getElementById不是一个函数”时,错误信息是正确的 - 在Notes电子邮件中几乎没有对JavaScript的支持。

如果您需要在Notes中隐藏/显示某些内容,您将不得不使用操作创建Notes表单并隐藏公式以获得相同的效果。然后,电子邮件可以与嵌入到电子邮件中的表单一起发送,并且当收到电子邮件时将打开该表单而不是典型的备忘录表单。

请注意,由于会打开安全漏洞,因此大多数电子邮件客户端(Outlook等)都不支持javascript。你可能有更好的运气发送链接给用户,然后让他们打开一个网页或Notes数据库,你可以更好地控制向他们展示事物的方式。

2

问题的根源在于Notes不显示HTML *。为了显示HTML格式的MIME电子邮件(或其内容存储为MIME和HTML的任何其他富文本字段),必须先将内容转换为Notes Rich Text(合成数据或CD)格式。多年来,静态HTML的转换已经有了很大的改进,但是一旦转换完成,就不会有HTML文档需要修改。显然,您的链接/操作已正确转换为与Notes相同的内容,但Notes客户机中没有DOM方法的挂钩。 JavaScript几乎局限于操纵字段值(通过访问方法document.forms[0].LiteralFieldName),交换图像(通过document.images集合)和窗口对象方法的一小部分。

*可以在Notes客户端中查看纯Web页面,但在完整选项卡中使用IE ActiveX控件 - 它本身不可用于呈现文档的一部分。

0

它可能不适合你的HTML需求,而且可以帮助你隐藏/显示内容:

  • 在一个新的邮件,请选择你要隐藏的内容/显示
  • 点击Create /科
  • 您也可以为这部分定义节的属性内的名字

(作品在Lotus Notes 8.5)