Not sure if this helps you, but here is how I have it in one of my pages for a slider with min and max:
@OnEvent(value=EventConstants.ACTION, component="sliderRangeZone") Object updateRange() { min= Integer.parseInt(request.getParameter("min")); max= Integer.parseInt(request.getParameter("max")); return rangeZone.getBody(); } <label class="control-label" for="postalCode">Between<span style="color: red;"><sup>*</sup></span> <t:zone t:id="rangeZone" id="rangeZone" update="show" visible="true" elementName="span"> <strong>${min}</strong> and <strong>${max}</strong> PM. </t:zone> </label> <div class="controls" style="max-width: 200px;"> <t:jquery.rangeslider t:min="min" t:max="max" t:params="rangeparams" t:zone="rangeZone" t:id="sliderRangeZone" /> </div> ----- Original Message ----- From: "Boris Horvat" <horvat.z.bo...@gmail.com> To: "Jan Fryblik" <jan.fryb...@ebrothers.cz> Cc: "Tapestry users" <users@tapestry.apache.org> Sent: Tuesday, 21 May, 2013 1:23:46 PM Subject: Re: Tapestry Jquery Bind Well spoke too soon <t:zone t:id="zone" id="zone"> <div id="status">${textZone}</div> </t:zone> <t:form> <t:textfield class="${selector:this}" t:id="textZone" t:mixins="jquery/bind" t:event="change" t:eventType="change" t:zone="zone" /> </t:form> ------ @Property @Persist private String textZone; @InjectComponent private Zone zone; @OnEvent(value = "change") public Object change(String value) { textZone = value; return zone.getBody(); } This doesn't work as the context is not passed. In other words if I remove the parameter the method is hit if not I get the exception that there is no method to process the request. So I guess I am half say there. Barry did you by any chance had a test where you pass the parameter. PS Looking into the javascript url generated by the tapestry5-jquery http://tapestry5-jquery.com/mixins/docsbind:slidechange/CoNtExT and mine http://localhost:8080/healthstatus:change I think that for some reason I am missing the parameter that should tell it to insert context. So a bug maybe? Cheers On Tue, May 21, 2013 at 9:01 PM, Boris Horvat <horvat.z.bo...@gmail.com>wrote: > Nah that is not the problem. > > When I have changed from onchange to change it triggered the ajax request. > So I guess I should remove 'on' from my events. > > Thanks for help your example shad light on this :D > > Cheers > > > On Tue, May 21, 2013 at 8:55 PM, Jan Fryblik <jan.fryb...@ebrothers.cz>wrote: > >> >> >> I'm just guessing, but try to put there also attribute id. Its often >> worked for me. >> >> >> <t:zone t:id="zoneSlideChange" id="zoneSlideChange"> >> >> <div id="status">${textZone}</div> >> </t:zone> >> >> <t:form> >> <t:textfield t:id="textZone" t:mixins="jquery/bind" >> event="onchange" eventType="onfocus" zone="testzone"/> >> </t:form> >> >> >> BR, >> Jan >> >> >> >> >> >> >> On Tue, 21 May 2013 20:49:56 +0200, Boris Horvat < >> horvat.z.bo...@gmail.com> wrote: >> >> I have tried with prefix t: and it has nothing to do with that (it is not >>> really mandatory as far as I know). But I stilled tried it. The zone name >>> is also correct. The thing is that when I try to debug it the even it >>> never >>> triggered, so it cant be the zone related problem that is for sure. >>> >>> >>> On Tue, May 21, 2013 at 8:31 PM, Dmitry Gusev <dmitry.gu...@gmail.com >>> >wrote: >>> >>> Is it zone="testzone" vs t:zone="testzone" ? >>>> >>>> the same for these attributes: event="onchange" eventType="onfocus" >>>> >>>> looks like you forget to add "t:" prefix >>>> >>>> Also make sure you've specified correct zone client id, try the same as >>>> in >>>> Barry's example, using ${zoneSlideChange.clientId}. >>>> >>>> On Tue, May 21, 2013 at 9:48 PM, Boris Horvat <horvat.z.bo...@gmail.com >>>> >wrote: >>>> >>>> > Yea your example works, but mine does not and I cant see any >>>> difference. >>>> Do >>>> > you have any idea? >>>> > >>>> > >>>> > On Tue, May 21, 2013 at 4:34 AM, Barry Books <trs...@gmail.com> >>>> wrote: >>>> > >>>> > > Here is my old test case >>>> > > >>>> > > <t:zone t:id="clickZone" visible="false"> >>>> > > click OK >>>> > > </t:zone> >>>> > > >>>> > > <div t:id="clickHere" t:type="any" >>>> > t:mixins="jquery/bind" >>>> > > t:eventType="click" t:event="click" >>>> > > t:zone="${clickzone.clientid}" >>>> > > >click test</div> >>>> > > >>>> > > @InjectComponent >>>> > > @Property >>>> > > private org.apache.tapestry5.corelib.**components.Zone >>>> clickZone; >>>> > > >>>> > > @Inject >>>> > > private Logger logger; >>>> > > >>>> > > @OnEvent(value="click") >>>> > > Object onClick() { >>>> > > return clickZone.getBody(); >>>> > > } >>>> > > >>>> > > >>>> > > >>>> > > On Mon, May 20, 2013 at 11:58 AM, Boris Horvat < >>>> horvat.z.bo...@gmail.com >>>> > > >wrote: >>>> > > >>>> > > > Did anyone used this? >>>> > > > >>>> > > > I cant use the example in the tapestry5-jquery as it complains >>>> that >>>> > > slider >>>> > > > is not a mixin, so I guess that the example is old as slider is >>>> now a >>>> > > > component. Still I have tried to use >>>> > > > >>>> > > > <t:zone t:id="zoneSlideChange"> >>>> > > > <div id="status">${textZone}</div> >>>> > > > </t:zone> >>>> > > > >>>> > > > <t:form> >>>> > > > <t:textfield t:id="textZone" t:mixins="jquery/bind" >>>> > > > event="onchange" eventType="onfocus" >>>> zone="testzone"/> >>>> > > > </t:form> >>>> > > > >>>> > > > ---------------- >>>> > > > >>>> > > > @Property >>>> > > > @Persist >>>> > > > private String textZone; >>>> > > > @InjectComponent >>>> > > > private Zone zone; >>>> > > > >>>> > > > @OnEvent(value = "onchange") >>>> > > > public Object onchange(String value) { >>>> > > > textZone = "The SlideChange event was triggered."; >>>> > > > return zone.getBody(); >>>> > > > } >>>> > > > >>>> > > > Does anyone know where is the problem? >>>> > > > >>>> > > > Cheers >>>> > > > Boris >>>> > > > >>>> > > >>>> > >>>> > >>>> > >>>> > -- >>>> > Sincerely >>>> > *Boris Horvat* >>>> > >>>> >>>> >>>> >>>> -- >>>> Dmitry Gusev >>>> >>>> AnjLab Team >>>> http://anjlab.com >>>> >>>> >>> >>> > > > -- > Sincerely > *Boris Horvat* > -- Sincerely *Boris Horvat*