Well the fact that one definition refers to the same ognl instance being
"ognl:components.autoPagingContent" commonsense tells me I shouldn't even
should be mucking with this... it should update automatically.
<div jwcid="[EMAIL PROTECTED]">
<div jwcid="@RenderBlock" block="ognl:components.autoPagingContent" />
</div>
<div jwcid="[EMAIL PROTECTED]">
<div jwcid="@RenderBlock" block="ognl:components.autoPagingContent" />
</div>
The fact that this component's PropertySelect doesn't even survive a page
refresh or post also tells me something isn't right.
?Best regards Ken in nashua
From: [EMAIL PROTECTED]: [EMAIL PROTECTED]: RE: bidirectional dom
interfaceDate: Wed, 16 Jan 2008 15:26:21 -0500
more feedback... I tried this
explicitlygetResponseBuilder().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™. Start
now!
_________________________________________________________________
Make distant family not so distant with Windows Vista® + Windows Live™.
http://www.microsoft.com/windows/digitallife/keepintouch.mspx?ocid=TXT_TAGLM_CPC_VideoChat_distantfamily_012008