Nested repeat controls in XPages -


i have situation have set of nested repeat controls. able refresh selected parts of repeat controls after dismissing dialog box. can specify element refreshed parameter in hide method of dialog box so:

dialog1.hide("repeat1");

where dialog1 component name of dialog box , repeat1 component name of repeat control refreshed.

if refresh top level, subordinate levels refreshed. if refresh second level first occurrence of level 2 repeat control refreshed. likewise, if refresh third level, first occurrence of third level refreshed.

there seems no obvious way refresh, say, second level repeat controls or third level repeat controls. understand behavior?

<?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:br></xp:br>     <xp:panel id="panel1">         <xp:button value="label" id="button3">             <xp:eventhandler event="onclick" submit="true"                 refreshmode="partial" refreshid="dialog1">                 <xp:this.action><![cdata[#{javascript:getcomponent("dialog1").show();}]]></xp:this.action>             </xp:eventhandler>         </xp:button>         <xp:br></xp:br>         <xp:text escape="true" id="computedfield4" value="#{javascript:@now()}">             <xp:this.converter>                 <xp:convertdatetime type="both"></xp:convertdatetime>             </xp:this.converter>         </xp:text>         <xp:repeat id="repeat1" rows="30" var="rowdata" style="border:1px solid red"             repeatcontrols="true" removerepeat="true">             <xp:this.value><![cdata[#{javascript:[1, 2, 3]}]]></xp:this.value>             <xp:text escape="true" id="computedfield1" value="#{javascript:rowdata}">                 <xp:this.converter>                     <xp:convertnumber type="number" integeronly="true">                     </xp:convertnumber>                 </xp:this.converter>             </xp:text>             &#160;-&#160;             <xp:text escape="true" id="computedfield7" value="#{javascript:@now()}">                 <xp:this.converter>                     <xp:convertdatetime type="both"></xp:convertdatetime>                 </xp:this.converter>             </xp:text>             <xp:br></xp:br>             <xp:repeat id="repeat2" rows="30" var="rowdata"                 style="margin:1em; border:1px solid green" repeatcontrols="true"                 removerepeat="true">                 <xp:this.value><![cdata[#{javascript:["a", "b", "c"]}]]></xp:this.value>                 <xp:text escape="true" id="computedfield2" value="#{javascript:rowdata}">                     <xp:this.converter>                         <xp:convertnumber type="number" integeronly="true">                         </xp:convertnumber>                     </xp:this.converter>                 </xp:text>                 &#160;-&#160;                 <xp:text escape="true" id="computedfield5" value="#{javascript:@now()}">                     <xp:this.converter>                         <xp:convertdatetime type="both"></xp:convertdatetime>                     </xp:this.converter>                 </xp:text>                 <xp:br></xp:br>                 <xp:repeat id="repeat3" rows="30" var="rowdata"                     style="margin:1em; border:1px solid orange" repeatcontrols="true"                     removerepeat="true">                     <xp:this.value><![cdata[#{javascript:[1, 2, 3]}]]></xp:this.value>                     <xp:text escape="true" id="computedfield3" value="#{javascript:rowdata}">                         <xp:this.converter>                             <xp:convertnumber type="number" integeronly="true">                             </xp:convertnumber>                         </xp:this.converter>                     </xp:text>                     &#160;-&#160;                     <xp:text escape="true" id="computedfield6" value="#{javascript:@now()}">                         <xp:this.converter>                             <xp:convertdatetime type="both"></xp:convertdatetime>                         </xp:this.converter>                     </xp:text>                     <xp:br></xp:br>                 </xp:repeat>             </xp:repeat>         </xp:repeat>     </xp:panel>     <xe:dialog id="dialog1" title="dialog box">         <xp:panel>             <xe:dialogbuttonbar id="dialogbuttonbar1">                 <xp:panel>                     <xp:button value="ok - refresh repeat1" id="button1">                         <xp:eventhandler event="onclick" submit="true"                             refreshmode="complete">                             <xp:this.action><![cdata[#{javascript:getcomponent("dialog1").hide("repeat1")}]]></xp:this.action>                         </xp:eventhandler>                     </xp:button>                     <xp:button value="ok - refresh repeat2" id="button4">                         <xp:eventhandler event="onclick" submit="true"                             refreshmode="complete">                             <xp:this.action><![cdata[#{javascript:getcomponent("dialog1").hide("repeat2")}]]></xp:this.action>                         </xp:eventhandler>                     </xp:button>                     <xp:button value="ok - refresh repeat3" id="button2">                         <xp:eventhandler event="onclick" submit="true"                             refreshmode="complete">                             <xp:this.action><![cdata[#{javascript:getcomponent("dialog1").hide("repeat3")}]]></xp:this.action>                         </xp:eventhandler>                     </xp:button>                 </xp:panel>             </xe:dialogbuttonbar>         </xp:panel>     </xe:dialog> </xp:view> 

have considered put panel (or custom control) inside repeats , instead of targeting repeat, target panel. there number of examples can there:

enventually inside repeats might want add local id (the generated one) local js object, have full control. let know how goes.


Comments

Popular posts from this blog

php - mySql Join with 4 tables -

css - Text drops down with smaller window -

c# - DetailsView in ASP.Net - How to add another column on the side/add a control in each row? -