用户尝试访问字段和文档时,xpages显示警报窗口。处于阅读模式

时间:2014-08-07 07:44:32

标签: xpages

测试XPiNC和浏览器应用程序时,一些用户希望在尝试填写某些字段并且文档为!currentDocument.isEditable()时显示一些弹出/警告窗口。

主要文档结构位于Xpages中,并且有许多字段,其中一些字段为showReadonlyAsDisabled="true",其中一些字段不存在。

所以,当用户打开现有文档时,他们甚至无法访问这些字段,他们只是点击了xpage。是否可以显示一些消息/警报窗口?此任务是否与xpage中的字段或某些事件有关系?

感谢您的时间。

2 个答案:

答案 0 :(得分:2)

一个非常简单的解决方案是,如果文档处于读取模式,则显示带有消息的div。这是一个简单的例子:

<xp:div rendered="#{javascript:!document.isEditable()}">
    The document is readonly.
</xp:div>

如果您使用OneUI,可以将其设置为proper OneUI info message: - )

<xp:div rendered="#{javascript:!document.isEditable()}" styleClass="lotusMessage lotusConfirm">
    <xp:image id="Icon" url="/.ibmxspres/domino/oneuiv2/images/iconInfo16.png"></xp:image>
    The document is readonly.
</xp:div>

答案 1 :(得分:0)

您可能不想尝试检查服务器端,因为您不想经历刷新周期,即使!currentDocument.isEditable()在那里可用....

  1. 首先,我建议不要使用showReadonlyAsDisabled,因为它会鼓励你试图避免混淆。

  2. 如果这不是一个选项,那么您可以通过检查HTML组件的值来开始搜索解决方案,而不是尝试确定基础文档是否可编辑。不幸的是,当控件只读显示为禁用时,禁用的值为 false 。您可以在客户端找到一种适合您的方法。我努力尝试onclick和onkeypress。

    XSP.getElementById( “myInputText”)。停用

  3. 您可能只想拥有两个控件 - 一个用于编辑模式,另一个用于读取模式,onkeypress在编辑模式下返回

    XSP.alert(“您无法编辑此字段”)

  4. 当然,既然您可以尝试输入已禁用的字段,即使它处于编辑模式,为什么不始终弹出该警报?