3 つの異なるパーツから構築されたカスタム コントロールがあります。
- メニューバー
- コンテンツ テーブル (繰り返しコントロール)
- フッター
コンテンツ テーブルは、別のカスタム コントロールが表示される繰り返しコントロールです。今、私は次のxmlを持っています:
<xp:table styleClass="lotusTable" id="table">
<thead>
<tr>
<th>header</th>
</tr>
</thead>
<xc:TimeGridBody id="timeGridBody"></xc:TimeGridBody>
<xc:TimeGridFooter id="TimeGridFooter"></xc:TimeGridFooter>
</xp:table>
タイムグリッド内には、次のイベント ハンドラーを持つタイムライン カスタム コントロールがあります。
<xp:eventHandler
event="onclick"
submit="true"
refreshMode="partial"
execMode="partial"
execId="timeLineRow"
immediate="false" refreshId="timeLineRow">
<xp:this.action>
<![CDATA[#{javascript:
timeLineFactory.toDocument(compositeData.TimeLine);
var editModeKey = "EditMode"+compositeData.TimeLine.getFdMe();
viewScope.put(editModeKey, false);
}]]>
</xp:this.action>
<xp:this.onComplete>
<![CDATA[
XSP.partialRefreshPost("#{id:TimeGridFooter}", {});
]]>
</xp:this.onComplete>
</xp:eventHandler>
ご覧のとおり、いくつかの処理が行われています。処理が完了すると、timegridfooter コントロールが更新されます。私の firebug を見ると、partialrefresh get メソッドが実行されており、呼び出しの戻り本文に更新されたデータが含まれていることがわかります。しかし、何らかの理由で、このデータは私のブラウザでは更新されません。なぜこれが起こっているのか誰かが私に説明できますか? これは、partialrefreshget がページのより深い部分 (別のカスタム コントロール) で問題になっているためですか?