2015-04-02 39 views
1

我有一個x頁面,其中包含一個名爲dynamicViewPanel1的動態視圖面板,該面板根據取消記錄視圖和未取消記錄之間的單選按鈕組選擇進行更改。該頁面包括一個尋呼機前進到下一頁等。這一切工作正常。但是,我想要的是當通過單選按鈕更改視圖時,使尋呼機返回第一頁。我已經嘗試了下面的代碼,因爲它可以在互聯網上找到。基本上,如果用戶位於「已取消」視圖的第2頁上,然後單擊單選按鈕將鼠標指向「未取消」視圖,則會打開第2頁上的「未取消」視圖,並且不會返回到第1頁。但爲什麼下面的代碼不工作?如何讓頁面返回到第一頁單擊事件

我也嘗試 「GotoPage記述(0)」 而不是 「goToFirstPage()我還試圖改變getComponent。(」 conflictPager 「),以getComponent(」 dynamicViewPanel1" )

編輯:我已包括更多的澄清網頁代碼中的btnRefresh是在電臺組事件激活一個隱藏按鈕,以確保該頁面刷新。

<xp:panel> 
    <xp:label value="This page provides options to view records that are 
    cancelled or NOT cancelled, i.e. Open or Completed" 
    id="label5" style="font-weight:bold"> 
</xp:label> 
<xp:br></xp:br> 
<xp:br></xp:br> 
<xp:radioGroup id="rgDuplicates" defaultValue="0"> 
    <xp:selectItem itemLabel="Not Cancelled" itemValue="0"> 
    </xp:selectItem> 
    <xp:selectItem itemLabel="Cancelled" itemValue="1"> 
    </xp:selectItem> 
    <xp:eventHandler event="onclick" submit="false"> 
    <xp:this.script><![CDATA[document.getElementById("# 
     {id:btnRefresh}").click()]]></xp:this.script> 
    </xp:eventHandler> 
    <xp:eventHandler event="onclick" submit="true" refreshMode="complete"> 
    <xp:this.action><![CDATA[#{javascript:getComponent 
     ("dynamicViewPanel1").gotoFirstPage()}]]></xp:this.action> 
    </xp:eventHandler></xp:radioGroup> 
    <xp:button value="Refresh" id="btnRefresh" 
    style="display:none"> 
    <xp:eventHandler event="onclick" submit="true" 
     refreshMode="complete"> 
    </xp:eventHandler> 
    </xp:button> 
    <xp:panel id="maincontentpanel"> 
    <xe:dynamicViewPanel rows="30" id="dynamicViewPanel1" 
     width="100%" partialRefresh="true" showCheckbox="true"> 
     <xe:this.data> 
     <xp:dominoView var="view"> 
     <xp:this.viewName> 
     <![CDATA[#{javascript:if(getComponent("rgDuplicates").getValue 
      () == "0"){ 
      viewName = "NotCancelled" 
      } else { 
      viewName = "Cancelled" 
     }}]]> 
     </xp:this.viewName> 
    </xp:dominoView> 
    </xe:this.data> 
    </xe:dynamicViewPanel> 
    <xp:br></xp:br> 
    <xp:br></xp:br> 
    <xp:button value="Delete" id="delete"> 
    <xp:eventHandler event="onclick" submit="true" 
     refreshMode="complete"> 
     <xp:this.action> 
     <xp:actionGroup> 
      <xp:confirm message="Are you sure?"> 
      </xp:confirm> 
      <![CDATA[#{javascript:var viewPanel=getComponent 
       ("dynamicViewPanel1"); 
       var docIDArray=viewPanel.getSelectedIds(); 
       for(i=0; i < docIDArray.length; i++){ 
       var docId=docIDArray[i]; 
       var doc=database.getDocumentByID(docId); 
       doc.remove(true); 
       }}]]> 
      </xp:actionGroup> 
     </xp:this.action> 
     </xp:eventHandler> 
    </xp:button> 
    <xp:pager partialRefresh="true" 
     layout="Previous Group Next" xp:key="footerPager"  
     id="conflictPager" for="dynamicViewPanel1"> 
</xp:pager> 
</xp:panel> 
</xp:panel> 

回答

1

我得到它的工作使用

getComponent("dynamicViewPanel1").gotoFirstPage() 

這裏是完整的代碼

<?xml version="1.0" encoding="UTF-8"?> 
<xp:view xmlns:xp="http://www.ibm.com/xsp/core" xmlns:xe="http://www.ibm.com/xsp/coreex"> 
    <xp:radioGroup id="rgDuplicates" defaultValue="0"> 
     <xp:selectItem itemLabel="Not Cancelled" itemValue="0"> 
     </xp:selectItem> 
     <xp:selectItem itemLabel="Cancelled" itemValue="1"> 
     </xp:selectItem> 
     <xp:eventHandler event="onclick" submit="true" refreshMode="complete"> 
      <xp:this.action><![CDATA[#{javascript:getComponent("dynamicViewPanel1").gotoFirstPage();}]]></xp:this.action> 
     </xp:eventHandler> 
    </xp:radioGroup> 
    <xe:dynamicViewPanel id="dynamicViewPanel1" rows="2"> 
     <xe:this.data> 
      <xp:dominoView var="view1"> 
       <xp:this.viewName><![CDATA[#{javascript:var c = getComponent("rgDuplicates").getValue() 
if(c=="1"){ 
    return "Start2" 
}else{ 
    return "start" 
} 
}]]></xp:this.viewName> 
      </xp:dominoView> 
     </xe:this.data> 
    </xe:dynamicViewPanel> 
    <xp:pager layout="Previous Group Next" partialRefresh="true" id="pager1" for="dynamicViewPanel1"></xp:pager> 
</xp:view> 
+0

感謝您的迴應,但這並沒有奏效。我編輯了問題和代碼來澄清。基本上我的代碼的作品除了如果用戶在第2頁的「取消」視圖,然後點擊「未取消」單選按鈕,而不是在第一頁上打開「未取消」視圖,它會打開第2頁 – AJF 2015-04-02 14:12:49

+0

我的代碼工程很好,你的代碼遇到了什麼問題? – 2015-04-02 14:17:47

+0

視圖中的數據根本沒有顯示。當我試過你的時候,所有顯示的是兩個空的但是高亮的行在收音機組控制下 – AJF 2015-04-02 14:27:51

相關問題