根据 Tim Tripcony 的建议,我在下面实现了一个简单的 xpage,它允许我扩展 no。用户单击“添加更多”按钮时显示的字段数。当“添加更多”按钮进行部分刷新并扩展编号时,我遇到了部分刷新不记得数据的问题。的行。
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core" dojoForm="true">
<xp:this.data>
<xp:dominoDocument var="newDoc" formName="frmAddMore"></xp:dominoDocument>
</xp:this.data>
<xp:this.afterPageLoad><![CDATA[#{javascript:viewScope.rowCount = new java.lang.Integer(5);}]]></xp:this.afterPageLoad>
<xp:div id="parentDiv">
<xp:repeat indexVar="fieldSuffix" value="#{viewScope.rowCount}"
rows="#{viewScope.rowCount}" var="row">
<xp:div>
<xp:inputText id="KeyNo">
<xp:this.value><![CDATA[#{newDoc["KeyNo_#{fieldSuffix}"]}]]></xp:this.value>
</xp:inputText>
<xp:inputText id="Qty">
<xp:this.value><![CDATA[#{newDoc["Quantity_#{fieldSuffix}"]}]]></xp:this.value>
</xp:inputText>
</xp:div>
</xp:repeat>
<xp:button value="Add More" id="btnAddMore"
execMode="partial">
<xp:eventHandler event="onclick" submit="true"
execMode="partial" execId="parentDiv" refreshMode="partial" refreshId="parentDiv">
<xp:this.action><![CDATA[#{javascript:viewScope.rowCount = new java.lang.Integer(viewScope.rowCount + 5);}]]></xp:this.action>
<xp:this.script>
<xp:executeClientScript
script="dojo.window.scrollIntoView(dojo.byId('#{id:btnAddMore}').id);">
</xp:executeClientScript>
</xp:this.script>
</xp:eventHandler>
</xp:button>
</xp:div>
</xp:view>
我在这里想念什么?
我还注意到 dojo.window.scrollIntoView 客户端 JS 函数不起作用?任何帮助将非常感激。