Hi All,

I am using the jQuery bind mixin to respond to 'onChange' events from my form 
fields, process the change then update the zone.  This is my tml:

<t:select t:id="superTypeOverride" t:clientId="superTypeOverride" 
t:value="cubeCard.superTypeCombinationOverride" 
t:mixins="jquery/bind" 
bind.context="cubeCard.id" 
bind.event="SuperTypeOverrideChanged" 
bind.eventType="change" 
bind.zone="gridZone" t:zone="gridZone" />

I have a bunch of these created in a loop, each with a different cubeCard.id 
context value.

What I'm seeing is that when the value of the field is changed, two requests 
are produced:

1. /editcube:supertypeoverridechanged/49
2. /editcube.supertypeoverride:change

The first one contains the important context value and the second one contains 
the changed value of the form field in the Request body.  I can add a handler 
for both in my page class:

1. public Object onSuperTypeOverrideChanged(Integer cubeCardId) 
2. public void onChangeFromSuperTypeOverride() 

But the problem is that I need the context AND the submitted value, therefore 
what I'm having to do is basically wait for the second request to be processed 
and the value set on the server side before I can process the request 
containing the context:

public Object onSuperTypeOverrideChanged(Integer cubeCardId) {
Thread.sleep(200);
//processing
return gridZone.getBody();
}

Clearly this isn't ideal.  So, am I doing something wrong here?  Should I be 
getting two requests or just one? Is there anyone else who has experience with 
this mixin who can help me out?  

Thanks,
Ben.


                                          

Reply via email to