我创建了一个单页应用程序,它似乎在某些页面转换时表现得非常糟糕。
我有一个父文档的视图,然后我单击一个文档来加载它,好的。我在父级上有一个“添加项目”按钮来编写一个新的子级文档,该子级文档将通过文档 ID 与加载的父级相关。
问题是,当我在编辑模式下加载新的子文档时,上一页仍然显示在屏幕上。我现在有一堆乱七八糟的控制,事情从那里变得更糟。如果我单击子文档上的“后退”按钮,我会在父文档页面上返回背景页面,但现在子文档仍以编辑模式加载到前台。如果我再次回击,它会转到没有加载文档的父表单。
我在所有页面上都使用了设置 resetContent="true",我的“添加项目”命令是:
<xe:moveTo targetPage="ItemPage" forceFullRefresh="true" saveDocument="true"></xe:moveTo>
我也尝试过:
<xe:moveTo targetPage="ItemPage" forceFullRefresh="true" saveDocument="false"></xe:moveTo>
我究竟做错了什么?这是带有升级包 1 的 Domino 8.5.3FP3。
好的,这是页面标题中的按钮代码:
<xe:djxmHeading id="ReqHeading" label="Requisition" back="Back" moveTo="viewAllRequisitions">
<xp:this.facets>
<xp:button value="Add Item" id="actionFacetButton1" xp:key="actionFacet">
<xp:eventHandler event="onclick" submit="true" refreshMode="complete">
<xp:this.action>
<xp:actionGroup>
<xp:saveDocument var="document1"></xp:saveDocument>
<xp:executeScript script="#{javascript:sessionScope.RequisitionID = document1.getDocument().getUniversalID();}">
</xp:executeScript>
<xe:moveTo targetPage="ItemPage" forceFullRefresh="true" saveDocument="true"></xe:moveTo>
</xp:actionGroup>
</xp:this.action>
</xp:eventHandler>
</xp:button>
</xp:this.facets>
</xe:djxmHeading>
这是新的子文档页面:
<xe:djxmHeading id="ItemHeading" label="Add Item" back="Back" moveTo="RequisitionPage">
</xe:djxmHeading>
<xp:this.data>
<xp:dominoDocument var="document1" formName="Item">
</xp:dominoDocument>
</xp:this.data>
<xp:label value="Job Number:" id="labelSubject1"></xp:label>
<xp:inputText id="txtSubject" value="#{document1.JobNumber}">
</xp:inputText>
<xp:br />
<xp:label value="Item Description: " id="lblDescription"></xp:label>
<xp:inputText id="txtDescription" value="#{document1.Description}"></xp:inputText>
<xp:br />
<xp:label value="Quantity: " id="lblQuantity"></xp:label>
<xp:inputText id="txtQuantity" value="#{document1.Quantity}" defaultValue="1" maxlength="3" size="3"></xp:inputText>
<xe:tabBar barType="segmentedControl" id="tabBar1">
<xe:tabBarButton id="tabBarButton1" label="Submit">
<xp:eventHandler event="onClick" submit="true" refreshMode="complete">
<xe:this.action>
<xp:saveDocument var="document1"></xp:saveDocument>
</xe:this.action>
</xp:eventHandler>
</xe:tabBarButton>
<xe:tabBarButton id="tabBarButtonEdit" label="Edit" rendered="#{javascript:!document1.isEditable()}">
<xp:eventHandler event="onClick" submit="true" refreshMode="complete">
<xp:this.action>
<xp:changeDocumentMode mode="edit" var="document1">
</xp:changeDocumentMode>
</xp:this.action>
</xp:eventHandler>
</xe:tabBarButton>
</xe:tabBar>
好的,我现在已经放弃了单页应用程序,因为我发现它在创建任何新文档时都不能正确刷新。据我所知,这似乎被打破了。
我现在正在尝试使用多个页面,但是当我为 moveTo 目标使用新的 xpage 时,我收到一个错误“找不到目标视图:null。这应该有效吗?