在我的XPage上,我有一个列表框控件,启用了Select 2。当所选值更改时,我想更新XPage中的多个其他控件:
<xp:listBox id="listType" value="#{employeeBean.employee.type}">
<xp:selectItem itemLabel="Native"></xp:selectItem>
<xp:selectItem itemLabel="Expat"></xp:selectItem>
</xp:listBox>
<xp:scriptBlock id="update">
<xp:this.value><![CDATA[
$(document).ready(
function(){
x$("#{id:listType}").select2();
}
)
$(document).ready(
function(){
x$("#{id:listType}").on("change", function(e) {
XSP.partialRefreshPost("#{id:txtTime}");
XSP.partialRefreshPost("#{id:txtTest}");
})
}
)]]></xp:this.value>
</xp:scriptBlock>
以下是项目:
<xp:text escape="true" id="txtTime" value="#{javascript:@Now();}">
<xp:this.converter>
<xp:convertDateTime type="time"></xp:convertDateTime>
</xp:this.converter>
</xp:text>
<xp:text escape="true" id="txtTest" value="#{employeeBean.employee.type}">
</xp:text>
我只注意到第一个项目正在刷新。我做错了什么?
答案 0 :(得分:4)
使用级联刷新级联(首次完成时开始第二次):
XSP.partialRefreshPost("#{id:txtTime}", {
onComplete: function() {
XSP.partialRefreshPost("#{id:txtTest}");
}
});