[Seaside] Forms - Select List: action before submit button
Magnus Schwarz
magnus at heeg.de
Tue Jun 12 12:07:58 UTC 2007
Hi Dirk,
it is an extra package (in the public repository)...
Magnus
dirk newbold schrieb:
> Is Scriptaculous in the SeasideForWebToolKit parcel or do I have to
> load another parcel - it's just that the 'updater' method below is not
> understood and I can't seem to find it?
>
> Dirk
>
> On 6/12/07, dirk newbold <dirkdirk at gmail.com> wrote:
>> Thanks very much - I'll give it a go.
>>
>> Cheers,
>>
>> Dirk
>>
>> On 6/12/07, Cédrick Béler <cbeler at enit.fr> wrote:
>> > dirk newbold a écrit :
>> > > All,
>> > >
>> > >
>> http://ajax.asp.net/ajaxtoolkit/CascadingDropDown/CascadingDropDown.aspx
>> > >
>> > > I found the exact example I am trying to achieve as per this ajax
>> link
>> > > above.
>> > >
>> > > I'm guessing Seaside has same deal but can't see to make anything
>> work
>> > > - I'm new at all this.
>> > >
>> > > Thanks,
>> > >
>> > > Dirk
>> > I think you have to use the updater and onChange() event to realize
>> > that... in 3 different select...
>> > have a look at SUClassBrowser renderCategoriesOn: html... or see
>> > implementors of #updater
>> > Also, there was a similar stuuf with SeasideAsync but if you use only
>> > scriptaculous, this should be somethink like (not tested):
>> >
>> > renderContentOn: html
>> > html div
>> > id: 'box1';
>> > with: [self renderBox1On: html].
>> > html div
>> > id: 'box2';
>> > with: [self renderBox2On: html].
>> > html div
>> > id: 'box1';
>> > with: [self renderBox3On: html].
>> >
>> >
>> > renderBox1On: html
>> > html select
>> > id: 'box1';
>> > selected: self val1;
>> > list: self list1;
>> > callback: [:valBox1 | self val1 := valBox1]
>> > onChange: (hmtl updater
>> > id: 'box2'; "on change, update the
>> box
>> > named box2"
>> > triggerFormElement: 'box1' "also triger
>> > the action associated to that form element.... self val1 := valBox1
>> > ort whaterver..."
>> > callback: [:render | self renderBox2On:
>> > render]. " the box is redrawn with the rendering fonction
>> renderBox3"
>> > onSuccess: (html updater "don't
>> forget to
>> > upadate the last box..."
>> > id: 'box3';
>> > callback: [:render | self
>> > renderBox3On: render])
>> >
>> > renderBox2On: html
>> > html select
>> > id: 'box2';
>> > selected: self val2;
>> > list: self list2;
>> > callback: [:valBox2 | self val2 := valBox2]
>> > onChange: (hmtl updater
>> > id: 'box2';
>> > triggerFormElement: 'box2';
>> > callback: [:render | self renderBox3On:
>> render]
>> >
>> > renderBox3On: html
>> > html select
>> > id: 'box3';
>> > selected: self val3;
>> > list: self list3;
>> > callback: [:valBox3 | self val3 := valBox3]
>> > onChange: (hmtl request
>> > triggerFormElement: 'box2'] "only trigger
>> > the callback associated to id box3... no rendering needed..."
>> >
>> >
>> > hth
>> >
>> > Cédrick
>> > _______________________________________________
>> > Seaside mailing list
>> > Seaside at lists.squeakfoundation.org
>> > http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
>> >
>>
> _______________________________________________
> Seaside mailing list
> Seaside at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
>
>
>
--
Magnus Schwarz * Senior Smalltalk Architect * mailto:magnus.schwarz at heeg.de
phone:+49 231 97599-0 * fax:+49 231 97599-20
Georg Heeg eK Dortmund
Handelsregister: Amtsgericht Dortmund A 12812
---------------------------------------------------
PGP PUBLIC KEY BLOCK via http://www.heeg.de/~magnus
More information about the Seaside
mailing list