xpages reader字段 - 只读类型

时间:2014-11-24 08:11:05

标签: field xpages readonly

我有疑问: 我的xpages包含一个包含文档创建者的字段。 问题是: 当ReadOnly字段为Enabled时,代理无法从上下文获取字段的值。

我希望用户无法更改该字段的值 怎么解决?

注意:有一个按钮可以调用代理来处理上下文

感谢您的帮助

3 个答案:

答案 0 :(得分:1)

为什么不使用inputText的disable属性?在CSS的帮助下,结果可能会很好:

 <xp:inputText id="inputText1" 
            style="background-color:none;border:none;background: transparent"
            disabled="true">
....
</xp:inputText>

或者您可以计算禁用属性:

<xp:this.disabled><![CDATA[#{javascript:if (currentDocument.isEditable())
return true;}]]></xp:this.disabled>

提示:我建议创建一个.css文件并在那里写下所有属性。然后只需将文件导入相应的xpage / custom控件,并在该字段的Style属性中指定该类。

答案 1 :(得分:1)

首先:它不是很清楚你想做什么。您有一个包含文档创建者的字段,并且您说的是代理。一些指示:

  • 永远不要尝试处理UI元素。始终追踪数据模型,绑定数据。
  • 显示用户名并不会将其写回任何地方,您需要采取不同的操作。添加到&#34;发布新文档&#34;事件类似:

    var creator = document1.replaceItemValue("Creator",@UserName);
    creator.setAuthors(true);
    

(上面是我的头,可能包含错别字)。然后值在文档中,您可以在计算字段中使用它并将其交给代理(我不会这样做,将您的代理代码转换为Java并在您使用它时进行清理)。

答案 2 :(得分:0)

你的意思是这样吗?

<xp:inputText id="inputText1" defaultValue="test">
        <xp:this.attrs>
            <xp:attr name="readonly" value="true"></xp:attr>
        </xp:this.attrs>
</xp:inputText>