Hi Paul! Have a look on the defer param of the submit component.
I think your submit component should look like: <t:submit t:event="RemoveLocation" t:context="${location.hashCode()}" defer="true"/> Best regards, Gerry 2011/5/16 Paul Stanton <p...@mapshed.com.au> > Tapestry 5.1.0.5 > > Hi all, > > I'm having a problem with the following code: > > <t:form t:id="locationsForm" t:zone="myZone"> > <t:loop t:source="locations" t:value="location" > t:encoder="locationEncoder"> > <t:textfield t:value="location.name" /> > <t:submit t:event="RemoveLocation" t:value="remove ${location.hashCode()}" > t:context="${location.hashCode()}" /> > </t:loop> > <t:submit t:value="save" /> > </t:form> > > Say I end up with the following buttons: > > <input type="submit" name="button" id="button" value="remove 12339020"> > <input type="submit" name="button" id="button" value="remove 2504658"> > > Clicking on either button will only ever trigger the event > 'onRemoveLocation' with the context '2504658'. > > I'm guessing the second submit component is overriding the event handler > registered by the first, so they both end up calling the second components > event handler. > > I have tried setting the clientId to something unique but that did not > help. > > I need the remove buttons to submit the same form since the user may update > the name of one element and remove the second in the same operation. > > Advice appreciated, p. > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org > For additional commands, e-mail: users-h...@tapestry.apache.org > >