Hi,

We're having trouble with JavaScript calls in blocks that are used for zone 
updates. They work perfectly for FIrefox, Safari, etc. but show nasty errors in 
IE.

apostrophes in javascript statements are returned as ' in the returned 
block for zone updates. This irritates IE. In the example below, the 'hello 
world' statement is the breaking point.

Any thought about fixes or workarounds?

Thanks

Moritz

Here's the example page. just open the page and click on 'action' and you'll 
see the error. And the zone is not updated. Works for the other browsers though.

Page.tml

<html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd";>
<body>
  <t:block t:id="demoBlock">
   <a onclick="alert ('hello world');" href="#">clickme</a>
  </t:block>
  
  <t:zone t:id="demoZone" visible="true">
  <t:delegate to="demoBlock"/>
  </t:zone>
  
  <t:ActionLink t:id="update" t:zone="demoZone">action</t:ActionLink>
  
</body>
</html>

Page.java

import org.apache.tapestry5.Block;
import org.apache.tapestry5.annotations.OnEvent;
import org.apache.tapestry5.annotations.Property;
import org.apache.tapestry5.ioc.annotations.Inject;

public class Page
{

        @Inject
        @Property
        private Block demoBlock;
        
        @OnEvent(component="update")
        public Block onUpdate() 
        {
                return demoBlock;
        }

}

Reply via email to