Xpages 将字段值重置回保存的文档上的值

Xpages 将字段值重置回保存的文档上的值,xpages,Xpages,我在一个repeat控件中有一个面板,它附带了一个domino文档数据源: <xp:panel id="RepeatPanel"> <xp:this.data> <xp:dominoDocument var="doc" formName="TestForm" action="editDocument" documentId="#{javascrip

我在一个repeat控件中有一个面板,它附带了一个domino文档数据源:

<xp:panel id="RepeatPanel">
    <xp:this.data>
        <xp:dominoDocument
            var="doc"
            formName="TestForm"
            action="editDocument"
            documentId="#{javascript:viewScope.docId}"
            concurrencyMode="force">
        </xp:dominoDocument>
    </xp:this.data>

如果用户对字段进行了更改,我希望有一个取消按钮,该按钮将执行部分刷新,并将所有字段重置回现有Notes文档中存储的内容。有什么方法可以做到这一点吗?

使用选项“设置部分执行模式”
execMode=“partial”


只有按钮(button2)部分执行=更新到服务器。部分刷新的部分(示例中的InputExt1)并非如此。这样,InputExt1值就不会被发送到服务器,服务器会用前面的数据呈现这个部分

有关此选项的更多信息,请参阅第920页及以下的《掌握XPages:XPages应用程序开发和…第二版分步指南》一书

作为备选方案,您可以使用值重置刷新区域内的字段 从后端文档。使用var docOld=document1.getDocument() 要获取具有“旧”值的后端文档,并使用
document1.setValue(“A”,docOld.getItemValueString(“A”)



工作正常。谢谢如果我的面板中的某个字段进行了部分刷新(我隐藏/显示了字段),则这似乎不起作用。如果发生部分刷新,我用execMode=“partial”单击“取消”按钮,则字段值不会恢复为文档上的值。你知道解决这个问题的方法吗?你可以只在客户端做隐藏/显示字段吗?如果归结到这一点,也许可以。谢谢。为我的答案添加了一个替代选项。它允许您在取消之前刷新部件,并且能够返回到文档的原始值。