I could be mistaken, but I think if you have the component in a loop, then updateComponent("baseIdName") will apply to all of those components in the loop . . . I.e., you don't have to specify each individual instance.
If you're running into issues with grouping though, you could surround the the whole thing with an @Any div and updateComponent on that. It will descend into each child component. I had to do this to work around a bug in IE6 (subsequently filed in JIRA). -- Kevin On 1/16/08 3:26 PM, in article [EMAIL PROTECTED], "Ken in nashua" <[EMAIL PROTECTED]> wrote: > > more feedback... > > I tried this explicitly > getResponseBuilder().updateComponent("tableSizeSelect_0"); > > and it did not update the select dom with the expected value that lives in the > other select dom > getResponseBuilder().updateComponent("tableSizeSelect"); > Best regards Ken in nashua > > > From: [EMAIL PROTECTED]: [EMAIL PROTECTED]: RE: > bidirectional dom interfaceDate: Wed, 16 Jan 2008 15:16:20 -0500 > > > Ok, I fixed the ID issue... But... it don't work. What don't Work? more than > one DOM referencing one instance of a tapestry component/widget... namely a > PropertySelect. Here is the proof. I did view-source fro the browser to look > at the markup. markup...<select name="tableSizeSelect" > id="tableSizeSelect">...<select name="tableSizeSelect_0" > id="tableSizeSelect_0"> Now will HTML crap out if there exist multiple nodes > of same ID. My problem is right above. Each select has been modeled with > @Block here is it.. the declaration > <span jwcid="[EMAIL PROTECTED]"> > <table width="100%" border=1> > <tr> > <td width="25%" align="left" NOWRAP> > <span jwcid="@Insert" value="Table Size"/> > <select jwcid="[EMAIL PROTECTED]" > model="ognl:tableSizeModel" > value="ognl:tableSize" > /> > <span jwcid="@Insert" value="Paging Span"/> > <select jwcid="[EMAIL PROTECTED]" > model="ognl:pagingSpanModel" > value="ognl:pagingSpan" > /> > </td> ...more cut out omitted code</span> -------- here is it.. the > definition... > <div jwcid="[EMAIL PROTECTED]"> > <div jwcid="@RenderBlock" block="ognl:components.autoPagingContent" /> > </div> > <div jwcid="[EMAIL PROTECTED]"> > <div jwcid="@RenderBlock" block="ognl:components.collectionContent" /> > </div> > <div jwcid="[EMAIL PROTECTED]"> > <div jwcid="@RenderBlock" block="ognl:components.autoPagingContent" /></div> > -----Now referring back to top... the ID was taken on the first instance but > animated by tapestry on the second instance. markup...<select > name="tableSizeSelect" id="tableSizeSelect">...<select > name="tableSizeSelect_0" id="tableSizeSelect_0"> ? So now I guess EVERYTHING > on the second definition ([EMAIL PROTECTED]) will get all of it's ID's > appended > with an autoincrement. ? Here is the million dollar question... Given the > following block of code... > <div jwcid="[EMAIL PROTECTED]"> > <div jwcid="@RenderBlock" block="ognl:components.autoPagingContent" /> > </div> > <div jwcid="[EMAIL PROTECTED]"> > <div jwcid="@RenderBlock" block="ognl:components.collectionContent" /> > </div> > <div jwcid="[EMAIL PROTECTED]"> > <div jwcid="@RenderBlock" block="ognl:components.autoPagingContent" /></div> > How do I get headerSelect and footerSelect be updated against the same widget > instance (which happens to be the ognl:components.autoPagingContent) ? I > thought the above snippet was sufficient. It is obviously an ID issue. > Clarification appreciated. Thanks in advance. Best regards Ken in nashua > > > From: [EMAIL PROTECTED]: [EMAIL PROTECTED]: RE: > bidirectional dom interfaceDate: Wed, 16 Jan 2008 14:49:17 -0500 > > Well it's probably because the ID has changed now to id="[EMAIL PROTECTED]" > OK, so I should use jwcid.Best regards Ken in nashua > > > From: [EMAIL PROTECTED]: [EMAIL PROTECTED]: RE: > bidirectional dom interfaceDate: Wed, 16 Jan 2008 10:44:32 -0500 > > Well I tried this in the page that contains the component... > public void refresh() > { > getResponseBuilder().updateComponent("headerSelect"); > getResponseBuilder().updateComponent("footerSelect"); } Since these are my > dom references... > <div id="headerSelect"> > <div jwcid="@RenderBlock" block="ognl:components.autoPagingContent" /> > </div> > <div id="galleryContent"> > <div jwcid="@RenderBlock" block="ognl:components.collectionContent" /> > </div> > <div id="footerSelect"> > <div jwcid="@RenderBlock" block="ognl:components.autoPagingContent" /></div> > and this does not cut it. I am looking at cometd sample in tacos and it looks > like I need to establish a scripting interface? Can anyone confirm? Is there > an easier quicker way to update a dom referring to a widget from the server > side?Thanks in advance...Best regards Ken in nashua > > > From: [EMAIL PROTECTED]: [EMAIL PROTECTED]: > bidirectional dom interfaceDate: Wed, 16 Jan 2008 08:15:02 -0500 > > Hi Folks, I am impressed with this interface. > @EventListener(events = { "onchange" }, targets = { "pagingSpanSelect" }, > submitForm = "myForm", async = true) > > public void pagingSpanListener(IRequestCycle cycle) > {} It provides a nice interface from DOM into server side. But How do I talk > to my dom javascript node from here? Is there a way to reference the form and > set a value of a dom node that models a tapestry widget ? Why do I need this? > Well My tapestry widget is modeled to a dom node A. But I actually used the > @Block declaration to model another dom B node to the same widget... When I > change A, B stays the same. I need to update the other dom node > when one changes. Thanks for any tips.Best regards Ken in nashua > > Get the power of Windows + Web with the new Windows Live. Get it now! > > Make distant family not so distant with Windows Vista® + Windows Live. Start > now! > > Get the power of Windows + Web with the new Windows Live. Get it now! > > Share life as it happens with the new Windows Live. Start sharing! > _________________________________________________________________ > Put your friends on the big screen with Windows Vista® + Windows Live. > http://www.microsoft.com/windows/shop/specialoffers.mspx?ocid=TXT_TAGLM_CPC_Me > diaCtr_bigscreen_012008 --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]