[Seaside] How to use PTFactory>>evaluator for select list entry
(beginners question)
Gerhard Obermann
obi068 at gmail.com
Mon Jun 18 08:38:01 UTC 2012
I think you need to trigger the form, otherwise the callbacks are not
called.
1) give your form an id
2) change the onChange event to:
html prototype evaluator
triggerForm: formId;
callback: [:script |
script prototype element
id: 'formB';
update: [ :renderer | self renderSecondListOn:
renderer ]
]
On Mon, Jun 18, 2012 at 10:09 AM, Sabine Knöfel <sabine.knoefel at gmail.com>wrote:
> Hello,
>
> Gerhard thank you for your answer!
>
> I succeed in re-rendering ListB after selecting something new in ListA
> with >>renderSecondListOn:.
> So, this works now.
>
> But the second problem still remains: after changing the code from "html
> scriptaculous updater" to the prototype version "html prototype evaluator",
> the callback (self numb: value) does not fire anymore.
> I need the callback for saving the selected enty in an instance variable
> "numb".
>
> How can I save the selected list entry in the inst var?
>
> Greetings
> Sabine
>
>
> renderListAOn: html
> html
> form: [
> html select
> id: 'listAID';
> list: #('1' '2' '3' '4' '5' '6');
> selected: numb;
> callback: [ :value |
> 'fires' inspect.
> self numb: value ];
> onChange:
> (html prototype evaluator
> callback: [ :script |
> script prototype element
> id: 'formB';
> update: [ :renderer | self
> renderSecondListOn: renderer ] ];
> return: false) ]
> ##############
> renderListBOn: html
> html form
> id: 'formB';
> with: [
> html select
> id: 'listBID';
> list: #('1' '2' '3' '4' '5' '6');
> selected: numb ]
> ###############
> renderSecondListOn: html
> html select
> id: 'listBID';
> list: #('1' '2' '3' '4' '5' '6' 're-rendered');
> selected: numb
>
>
>>
>> 1. Re: How to use PTFactory>>evaluator for select list entry
>> (beginners question) (Gerhard Obermann)
>>
>>
>> ----------------------------------------------------------------------
>>
>> Message: 1
>> Date: Fri, 15 Jun 2012 22:19:38 +0200
>> From: Gerhard Obermann <obi068 at gmail.com>
>> Subject: Re: [Seaside] How to use PTFactory>>evaluator for select list
>> entry (beginners question)
>> To: Seaside - general discussion <seaside at lists.squeakfoundation.org>
>> Message-ID:
>> <CAOB-OiDchty+cYo1oPxst9koHFxqTa2DGQOQv7T3U=
>> Km6tRtPg at mail.gmail.com>
>> Content-Type: text/plain; charset="iso-8859-1"
>>
>> Hi Sabine and welcome!
>>
>> Try something like:
>>
>> script prototype element id: 'formB'; update: [:renderer | self
>> renderSecondListOn: renderer ].
>>
>> renderSecondListOn: html
>> html select
>> id: 'listBID';
>> list: #('1' '2' '3' '4' '5' '6');
>> selected: numb
>>
>> Cheers
>> Gerhard
>>
>>
>>
>>
>>
>> On Fri, Jun 15, 2012 at 12:45 PM, Sabine Knöfel <sabine.knoefel at gmail.com
>> >wrote:
>>
>> > Hello,
>> >
>> > I have 2 lists "ListA" and "ListB" and I want to follow "ListB" after
>> > "ListA".
>> > This means if I select a value in "listA", "listB" (which is in another
>> > Form) should update automatically.
>> >
>> > I have to use PTFactory>>evaluator, because I want to update more than
>> one
>> > DOM elememts later.
>> >
>> > I succeed in *hiding* ListB after changing selection of ListA.
>> > But do not know what to send instead of "hide" for updating ListB with
>> > selection of ListA.
>> >
>> > The value to select should be stored in an instance variable "numb".
>> This
>> > was working, when using "html scriptaculous updater" instead of
>> "prototype
>> > evaluator". After changing the code to use evaluator, the callback does
>> not
>> > work anymore.
>> >
>> > Cheers
>> > Sabine
>> > ###########
>> > renderListAOn: html
>> > html
>> > form: [
>> > html select
>> > id: 'listAID';
>> > list: #('1' '2' '3' '4' '5' '6');
>> > selected: numb;
>> > callback: [ :value | self numb: value ];
>> > onChange:
>> > (html prototype evaluator
>> > callback: [ :script |
>> > script prototype element id:
>> > 'listBID'. "hide"
>> > numb inspect ];
>> > return: false) ]
>> > ###########
>> > renderListBOn: html
>> > html form
>> > id: 'formB';
>> > with: [
>> > html select
>> > id: 'listBID';
>> > list: #('1' '2' '3' '4' '5' '6');
>> > selected: numb ]
>> >
>> > _______________________________________________
>>
>>
>
>
> _______________________________________________
> seaside mailing list
> seaside at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/seaside/attachments/20120618/c185ece2/attachment-0001.htm
More information about the seaside
mailing list