Take a look at this page, it will show you the life cycle of the tapestry
methods. You are returning zone2 in your onSuccess method. and probably
should use onSelected

http://jumpstart.doublenegative.com.au/jumpstart7/examples/navigation/whatiscalledandwhen

One way to do it to use an event handler and on the backend return the zone
from the event handler. example

<t:submit t:event="confirm"/>

Object onConfirm() {
    return yourZone;
}

The other more recommended way if it's just a simple confirm box is to use
the confirm mixin. This will prevent the loop to the backend and just do
everything in the UI via javascript.

<t:submit t:mixins="confirm" message="some message" title="some title"/>

https://github.com/apache/tapestry-5/blob/5.4-beta-22/tapestry-core/src/main/java/org/apache/tapestry5/corelib/mixins/Confirm.java

On Wed, Dec 10, 2014 at 7:28 PM, Carlos Gómez Montiel <ibe...@gmail.com>
wrote:

> Hi akshay, thank you for your answer.
>
> I had changed my example with your recomendation but the problem persist
> and the ajax post is sent when you press the submit:
>
> Test.tml
> <head>
>         <script>
>             $(document).ready(function() {
>                 $("#form1").submit(function(e) {
>                     return false;
>                 });
>             });
>         </script>
>     </head>
>
>     <t:zone t:id="zone1" id="zone1">
>             <t:form t:id='form1' t:zone='^'>
>             <t:submit value="enviar"/>
>         </t:form>
>     </t:zone>
>
>     <t:zone t:id='zone2' id='zone2'>
>         ${name}
>     </t:zone>
>
> Test.java
> @Inject
>     private AjaxResponseRenderer ajaxResponseRenderer;
>     @InjectComponent
>     private Zone zone1, zone2;
>
>     @Log
>     public String getName() {
>         return "bierck" + Math.random();
>     }
>
>
>     void onSuccess() {
>         ajaxResponseRenderer.addRender(zone2);
>     }
>
>
> Anyone can help me? how can I prevent the ajax form's submit ?
>
> Thank you
>
> 2014-12-10 16:45 GMT-06:00 akshay <akshayestat...@gmail.com>:
>
> > Hi,
> >
> > your structure should look like this:
> > .tml strcuture:-
> >
> > <t:zone t:id='zone1' id='zone1'>
> > <t:form t:id='form1' t:zone="^">
> >     <t:submit value="send"/>
> > </t:form>
> > </t:zone>
> >
> > <t:zone t:id='zone2' id='zone2'>
> > Your Content
> > </t:zone>
> >
> >
> >
> > The .java file structure
> > @InjectComponent
> > private Zone zone1,zone2;
> > @Inject
> > private AjaxResponseRender
> > OnSuccess(){
> > ajaxResponseRenderer.addRender(zone2) or zone2.getBody();
> > }
> >
> > Regards
> > Akshay
> >
> > On Wed, Dec 10, 2014 at 11:25 PM, Carlos Gómez Montiel <ibe...@gmail.com
> >
> > wrote:
> >
> > > Thank you for your answer George.
> > >
> > > > Are you trying to create an ajax form submit? If so, you should be
> > > wrapping the form with the zone
> > >
> > > Yes, I'm trying to create an ajax form submit, I don't understand why I
> > > should be wrapping the form with the zone, what is the reason? as far I
> > > know in my example I'm sending the form via ajax and then refreshing
> the
> > > zone 'zone1' returning the zone1's body in the onsuccess() event in the
> > > .java
> > >
> > > >As far as the confirm dialog goes, you could either
> > > use a confirm mixin or if you chose to use a zone style approach, on
> > submit
> > > return another zone for your confirm dialog.
> > >
> > > I'm using a mixin for show the confirm dialog (with bootstrap) but
> don't
> > > found how to prevent the ajax form's submit. Any one can help me with
> it?
> > >
> > > Thanks in advance
> > >
> > >
> > >
> > > 2014-12-10 7:44 GMT-06:00 George Christman <gchrist...@cardaddy.com>:
> > >
> > > > Are you trying to create an ajax form submit? If so, you should be
> > > wrapping
> > > > the form with the zone. As far as the confirm dialog goes, you could
> > > either
> > > > use a confirm mixin or if you chose to use a zone style approach, on
> > > submit
> > > > return another zone for your confirm dialog.
> > > >
> > > > On Wed, Dec 10, 2014 at 3:47 AM, Carlos Gómez Montiel <
> > ibe...@gmail.com>
> > > > wrote:
> > > >
> > > > > Hi there
> > > > >
> > > > > How can I prevent ajax form's event submit when the user clicks a
> > > submit
> > > > > button?
> > > > > I need to prevent the event for show an confirm dialog before it
> will
> > > be
> > > > > submited.
> > > > >
> > > > > My form:
> > > > >
> > > > > <t:form t:id='form1' t:zone='zone1'>
> > > > >     <t:submit value="send"/>
> > > > > </t:form>
> > > > >
> > > > > <t:zone t:id='zone1' id='zone1'>
> > > > > </t:zone>
> > > > >
> > > > > Thanks in advance
> > > > >
> > > >
> > > >
> > > >
> > > > --
> > > > George Christman
> > > > CEO
> > > > www.CarDaddy.com
> > > > P.O. Box 735
> > > > Johnstown, New York
> > > >
> > >
> >
> >
> >
> > --
> > Cheers!!
> > Akshay
> >
>



-- 
George Christman
CEO
www.CarDaddy.com
P.O. Box 735
Johnstown, New York

Reply via email to