我想創建一個轉到頁計數器與尋呼機結合,我發現這個有趣的文章:自尋呼機XPages中
http://www.mydominolab.com/2010/10/repeat-control-better-navigation.html
我有工作,但想不改變頁面。在組合框中當一個頁面號碼。在尋呼機中點擊(尋呼機正在進行部分刷新)。我想到了組合框的第一個defaultValue屬性,但沒有奏效。請有任何想法嗎?
下面是一些示例代碼:
<xp:panel styleClass="bodyText" id="dataPanel">
<xp:panel style="font-size: 11px !important;">
<xp:panel id="pagerArea" xp:key="headerPager">
<div style="float:left">
Page: 
<xp:comboBox id="cmbPages">
<xp:selectItems>
<xp:this.value><![CDATA[#{javascript:var rptControl:com.ibm.xsp.component.xp.XspDataIterator = getComponent("rptProduct");
if (rptControl == null) return [];
var total = vwProduct.getAllEntries().getCount(); //rptControl.getRowCount();
var rowsperpage = rptControl.getRows();
var totalpages = Math.ceil(total/rowsperpage);
var arr=[];
for (var i=1;i<=totalpages;i++) {
arr.push(@Text(i))
}
return arr}]]></xp:this.value>
</xp:selectItems>
<xp:eventHandler
event="onchange" submit="true" refreshMode="partial"
refreshId="dataPanel">
<xp:this.action><![CDATA[#{javascript:var pager:com.ibm.xsp.component.xp.XspPager = getComponent("pager1_Hidden");
pager.gotoPage(parseFloat(getComponent("cmbPages").getValue()) - 1);}]]></xp:this.action>
</xp:eventHandler>
</xp:comboBox>
</div>
<xp:pager partialRefresh="true" id="pager1"
for="rptProduct">
<xp:pagerControl id="pagerControl1"
type="FirstImage">
</xp:pagerControl>
<xp:pagerControl id="pagerControl8"
type="Separator">
</xp:pagerControl>
<xp:pagerControl id="pagerControl2"
type="PreviousImage">
</xp:pagerControl>
<xp:pagerControl id="pagerControl6"
type="Separator">
</xp:pagerControl>
<xp:pagerControl id="pagerControl5"
type="Group">
</xp:pagerControl>
<xp:pagerControl id="pagerControl7"
type="Separator">
</xp:pagerControl>
<xp:pagerControl id="pagerControl3"
type="NextImage">
</xp:pagerControl>
<xp:pagerControl id="pagerControl9"
type="Separator">
</xp:pagerControl>
<xp:pagerControl id="pagerControl4"
type="LastImage">
</xp:pagerControl>
</xp:pager>
</xp:panel>
<xp:pager partialRefresh="true"
id="pager1_Hidden" for="rptProduct" layout="Previous Group Next"
style="display:none;" pageCount="1000">
</xp:pager>
</xp:panel>
<div style="clear:both;"></div>
<br />
<xp:repeat id="rptProduct" rows="16" value="#{vwProduct}"
var="productRow">
<xp:panel styleClass="linkPanel" id="panel1">
<xp:text escape="false" id="imgHTML">
<xp:this.value><![CDATA[#{javascript:getImgURLForProduct(productRow.getDocument());}]]></xp:this.value>
</xp:text>
<xp:eventHandler event="onClientLoad"
submit="true" refreshMode="norefresh"></xp:eventHandler></xp:panel>
</xp:repeat>
<xp:eventHandler event="onClientLoad" submit="true" refreshMode="norefresh"></xp:eventHandler>
</xp:panel>
積分:感謝布魯斯·利爾的隱藏尋呼機想法。
謝謝Rajeev,我會放棄這一點 - 這項工作是否會進行部分刷新? – pipalia 2012-02-29 19:01:59
絕對。正如您可能已經知道的那樣,在部分刷新之前觸發BeforeRenderResponse。 – Reevs 2012-02-29 23:47:56