I don't really know how the data table works but I would guess it's a
property off the ui parameter that you want.


On Wed, Sep 4, 2013 at 12:24 AM, john c <john998...@yahoo.com> wrote:

> Ok I removed bind.context=".." altogether, and added:
>
> bind.callback="function(event,ui,u) {u.addContext("Your Value");
>
>
> I get "You Value" in the action listener. But I need the file id.
>
> I tried:
>
> bind.callback="function(event,ui,u) {u.addContext(${currRow.fileID});
> bind.callback="function(event,ui,u) {u.addContext(currRow.fileID);
>
>
> But it doesn't work. currRow is Null.
>
> My datatable is set to ajax mode (t:mode="true"). After searching the
> forums it says I need @Environmental on the row variable. Added that then
> got other errors.
>
>
> ________________________________
>  From: Barry Books <trs...@gmail.com>
> To: Tapestry users <users@tapestry.apache.org>; john c <
> john998...@yahoo.com>
> Sent: Friday, 30 August 2013 4:15 PM
> Subject: Re: JQuery Datatable Bind Mixin
>
>
> The callback is javascript. The bind mixin has no way of know what value
> you would like to pass back so the callback gets the value you want in the
> javascript event then adds it into the event url
>
> It's been a while but I think it's something like this
>
> <t:jquery.table id="dataTable"
>
>   t:row="currRow"
>   t:mixins="jquery/bind" bind.event="datatableclick" bind.eventType="click"
> bind.zone="theZone" bind.callback="function(event,ui,u) {
> u.addContext("Your Value"); }"
> include="..." >
>
>
> On Fri, Aug 30, 2013 at 2:23 PM, john c <john998...@yahoo.com> wrote:
>
> > Ok, here is a little more of the datatable code:
> >
> > <t:jquery.table id="dataTable"
> >
> >   t:row="currRow"
> >   t:mixins="jquery/bind" bind.event="datatableclick"
> > bind.eventType="click" bind.zone="theZone"
> bind.context="${currRow.fileID}"
> > include="..." >
> >
> >   <p:buttonCell>
> >                     <t:jquery.dialogajaxlink t:dialog="myDialog"
> > t:zone="detailZone" t:context="${thisfile.fileID}"><button
> > class="smallgridbutton"
> > type="button">Requeue</button></t:jquery.dialogajaxlink>
> >                  </p:buttonCell>
> >
> > </t:jquery.datatable>
> >
> >
> >
> > currRow is defined in java with @Property annotation.
> >
> > I have tried in the tml:
> >
> > bind.context="${currRow.fileID}"
> >
> > bind.context="currRow.fileID"
> >
> > I am always getting an error: currRow is NULL.
> >
> >
> > Why is that?
> >
> >
> >
> ------------------------------------------------------------------------------------------------
> >
> > Now with the callback, where does this Java code go?
> >
> >
> >
> >
> > ________________________________
> >  From: Barry Books <trs...@gmail.com>
> > To: Tapestry users <users@tapestry.apache.org>
> > Sent: Friday, 30 August 2013 8:59 AM
> > Subject: Re: JQuery Datatable Bind Mixin
> >
> >
> > You will need to provide a javascript callback function to the mixin that
> > puts the value into the url. It's called like this
> >
> > if ( callback ) {
> >    // TODO should work if value is array
> >    u.addContext = function(value) { u.url =
> u.url.replace(u.context,value)
> > };
> >    callback(event,ui,u);
> > }
> >
> > so I think your callback can be
> >
> > function(event,ui,u) { u.addContext("Your Value"); }
> >
> >
> >
> > On Thu, Aug 29, 2013 at 6:18 PM, Taha Hafeez Siddiqi <
> > tawus.tapes...@gmail.com> wrote:
> >
> > > Try curRow.fileID instead of ${curRow.fileID} as parameter to
> > bind.context
> > >
> > > Sent from my iPhone
> > >
> > > On 30-Aug-2013, at 3:26 AM, john c <john998...@yahoo.com> wrote:
> > >
> > > > I am attempting to use the jquery/bind mixin with a datatable, but
> not
> > > having success.
> > > > The relevant code is below. Basically I want to click a row and have
> it
> > > create a tapestry event, with the fileID.
> > > > I have tested and found the event occurs, but I can't seem to pass
> the
> > > fileID context.
> > > > Any ideas?
> > > >
> > > >
> > > >
> > >
> >
> ---------------------------------------------------------------------------
> > > >
> > > > <t:jquery.datatable id="dataTable"
> > > >
> > > >   t:mixins="jquery/bind" bind.event="datatableclick"
> > > bind.eventType="click" bind.zone="theZone"
> > bind.context="${currRow.fileID}"
> > > > include="..." >
> > > > </t:jquery.datatable>
> > > >
> > > >
> > >
> >
> ---------------------------------------------------------------------------
> > > >
> > > >
> > > >     @Persist
> > > >     @Property
> > > >     private OutboundFile currRow;
> > > >
> > > >     @InjectComponent
> > > >     private Zone theZone;
> > > >
> > > >
> > > >     @OnEvent("datatableclick")
> > > >     public Object onDatatableClickEvent(String value) {
> > > >         System.out.println("value: " + value);
> > > >         return theZone.getBody();
> > > >     }
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> > > For additional commands, e-mail: users-h...@tapestry.apache.org
> > >
> > >
> >
>

Reply via email to