[Seaside] How to use PTFactory>>evaluator for select list entry (beginners question)

Sabine Knöfel sabine.knoefel at gmail.com
Mon Jun 18 08:09:48 UTC 2012


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 ]
> >
> > _______________________________________________
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/seaside/attachments/20120618/a31bcc16/attachment.htm


More information about the seaside mailing list