You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by "Juan Isern (JIRA)" <ji...@apache.org> on 2010/04/19 20:59:52 UTC

[jira] Reopened: (TAP5-1107) AJAX stops working when enclosed in a Block

     [ https://issues.apache.org/jira/browse/TAP5-1107?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Juan Isern reopened TAP5-1107:
------------------------------


Howard, I'm reopening the issue because it's the only way I can respond to your message.

I overlooked the fact that the "zone" parameter must reference an HTML element, thanks for making it clear.

To make it consistent with the normal zone behavior, it'd be very nice that you could control the exact HTML id for zones that are included in a Block. (now they're appended some sort of random id to guarantee uniqueness, I guess)

I see there's a parameter called "idParameter" in Zone objects for that purpose, but unfortunately it doesn't seem to work when zones are rendered inside Blocks.

Best regards, Juan.

> AJAX stops working when enclosed in a Block
> -------------------------------------------
>
>                 Key: TAP5-1107
>                 URL: https://issues.apache.org/jira/browse/TAP5-1107
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.5
>            Reporter: Juan Isern
>
> Tapestry seems to ignore zone refreshes when those zones are included in content that was fetched via AJAX, as in:
>                                <t:progressivedisplay>
>                                     <t:zone t:id="someZone">
>                                         <t:form t:id="aForm" t:zone="someZone">
>                                             <t:submit/>
>                                         </t:form>
>                                     </t:zone>
>                                 </t:progressivedisplay> 
> In this case, the Submit button does nothing. I tried with an actionlink with its zone parameter set and it doesn't work either.
> Apparently this is the root cause of the problem, shown in this JSON:
> {"content":"<div class='t-zone' id='someZone-1281488a10e'><form action='/sx/details.aform' method='post' id='aForm-1281488a10e' name='aForm-1281488a10e'><div class='t-invisible'><input value='1437' name='t:ac' type='hidden'><\/input><input value='H4sIAAAAAAAAAFvzloG1XICBzyW1JDEzp9iquDQpN7OkuIjBIb8oXS+xIDE5I1WvJLEgtbikqNJULzm/KDUnMwlI5xbk56XmlRTrBYN1qAQU5SenFheDecXFmfl5zx4GfW12XfyCiYHRh4E7NSc1F6jcLzE3tYRByCcrsSxRPycxL10/uKQoMy/duqKghIENYjkAwXYdZJMAAAA=' name='t:formdata' type='hidden'><\/input><\/div><input name='submit' type='submit'><\/input><\/form><\/div>","script":"Tapestry.init({\"linkZone\":[[\"aForm-1281488a10e\",\"someZone\",\"/sx/details.aform\"]],\"zone\":[\"someZone-1281488a10e\"]});\n"} 
> Note that the actual zone id is "someZone-1281488a10e", whereas in the initialization script it is referred to as just "someZone". 
> Later on, some function in javascript.js breaks down because there's no element with an id "someZone" (which is correct)
> I bet that the solution shouldn't be very complex, but unfortunately my knowledge of the framework's internals is quite limited to solve it.
> Regards.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.