IE not refreshing ?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

IE not refreshing ?

Rusty-24
Hi all,
I've been playing with seaside and scriptaculous for some time now,
happily developing with firefox. Yesterday decided to try my page on
IE and found out that it has some different behaviour for updating
content.
For example, I have a root task that implements the following #go

self call: WAMyComponent new

My component have some input text, that after entering some values and
call #answer:, they don't get blanked (They does on firefox).
Same thing with updating forms. The following method does rerender the
textInput in firefox, and it just ignores it in IE:

renderFormOn: html
        html form
                id: 'form';
                with: [
                        html textInput
                                on: #val of: self;
                                onChange: (
                                        html updater
                                                id: 'form';
                                                triggerForm: 'form';
                                                callback: [ :object | self renderFormOn: object ] ) ]

Assume that #val: does something like val := anObject asNumber min: 10
so you can test entering 20 and seeing it change to 10 on unfocusing.
The updater callback gets evaluated, but the browser just refuse to re
render it.

Any ideas of what I'm missing here ?

Thanks for reading.

--
Rusty
http://www.oxidized.com.ar/
[hidden email]
_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: IE not refreshing ?

Rusty-24
Just for the record, the working example of the second case is:

asd: html
        html div
                id: 'divTag';
                with: [
                        html textInput
                                id: 'inputTag';
                                on: #val of: self;
                                onChange: (
                                        html updater
                                                id: 'divTag';
                                                triggerForm: 'inputTag';
                                                callback: [ :object | self asd: html ] ) ]

May sound obvious for an experienced ajax wrestler but for the common
smalltalker it could be a pain in the arse.

Thanx for watching.

Rusty

On 24/11/2007, Rusty <[hidden email]> wrote:

> Hi all,
> I've been playing with seaside and scriptaculous for some time now,
> happily developing with firefox. Yesterday decided to try my page on
> IE and found out that it has some different behaviour for updating
> content.
> For example, I have a root task that implements the following #go
>
> self call: WAMyComponent new
>
> My component have some input text, that after entering some values and
> call #answer:, they don't get blanked (They does on firefox).
> Same thing with updating forms. The following method does rerender the
> textInput in firefox, and it just ignores it in IE:
>
> renderFormOn: html
>         html form
>                 id: 'form';
>                 with: [
>                         html textInput
>                                 on: #val of: self;
>                                 onChange: (
>                                         html updater
>                                                 id: 'form';
>                                                 triggerForm: 'form';
>                                                 callback: [ :object | self renderFormOn: object ] ) ]
>
> Assume that #val: does something like val := anObject asNumber min: 10
> so you can test entering 20 and seeing it change to 10 on unfocusing.
> The updater callback gets evaluated, but the browser just refuse to re
> render it.
>
> Any ideas of what I'm missing here ?
>
> Thanks for reading.
>
> --
> Rusty
> http://www.oxidized.com.ar/
> [hidden email]
>


--
Rusty
http://www.oxidized.com.ar/
[hidden email]
_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

RE: Re: IE not refreshing ?

Sebastian Sastre-2
Rusty,

        probably the nesting of the html form tag was giving you annoyances.
It's quite common that when you update values using on change event you
don't need submit at all (so don't need the form tag and that nasty
limitation).

        cheers,

Sebastian
 

> -----Mensaje original-----
> De: [hidden email]
> [mailto:[hidden email]] En nombre de Rusty
> Enviado el: Domingo, 25 de Noviembre de 2007 14:05
> Para: [hidden email]
> Asunto: [Seaside] Re: IE not refreshing ?
>
> Just for the record, the working example of the second case is:
>
> asd: html
> html div
> id: 'divTag';
> with: [
> html textInput
> id: 'inputTag';
> on: #val of: self;
> onChange: (
> html updater
> id: 'divTag';
> triggerForm: 'inputTag';
> callback: [
> :object | self asd: html ] ) ]
>
> May sound obvious for an experienced ajax wrestler but for
> the common smalltalker it could be a pain in the arse.
>
> Thanx for watching.
>
> Rusty
>
> On 24/11/2007, Rusty <[hidden email]> wrote:
> > Hi all,
> > I've been playing with seaside and scriptaculous for some time now,
> > happily developing with firefox. Yesterday decided to try
> my page on
> > IE and found out that it has some different behaviour for updating
> > content.
> > For example, I have a root task that implements the following #go
> >
> > self call: WAMyComponent new
> >
> > My component have some input text, that after entering some
> values and
> > call #answer:, they don't get blanked (They does on firefox).
> > Same thing with updating forms. The following method does
> rerender the
> > textInput in firefox, and it just ignores it in IE:
> >
> > renderFormOn: html
> >         html form
> >                 id: 'form';
> >                 with: [
> >                         html textInput
> >                                 on: #val of: self;
> >                                 onChange: (
> >                                         html updater
> >                                                 id: 'form';
> >                                                 triggerForm: 'form';
> >                                                 callback: [
:object |

> > self renderFormOn: object ] ) ]
> >
> > Assume that #val: does something like val := anObject
> asNumber min: 10
> > so you can test entering 20 and seeing it change to 10 on
> unfocusing.
> > The updater callback gets evaluated, but the browser just
> refuse to re
> > render it.
> >
> > Any ideas of what I'm missing here ?
> >
> > Thanks for reading.
> >
> > --
> > Rusty
> > http://www.oxidized.com.ar/
> > [hidden email]
> >
>
>
> --
> Rusty
> http://www.oxidized.com.ar/
> [hidden email]
> _______________________________________________
> seaside mailing list
> [hidden email]
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside

_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

RE: IE not refreshing ?

Sebastian Sastre-2
In reply to this post by Rusty-24
Rusty,

        you may also take a look to this to see if it gives you ideas to
achieve your intention:

renderContentOn: html

        html div
                id: #blahInputContainer;
                with:[self renderBlahInputOn: html]


renderInputOn: html

        html textInput
                id: #blahInput
                onChange: (html updater
                                id: #blahInputContainer;
                                callback:[:val| self enteredBlahValue: val]
                                value:(html element
                                                id: #blahInput;
                                                value);
                                callback:[:h| self renderBlahInputOn: html];
                                yourself)

        note that the updater is called on the div id but it renders only
it's inner html content to prevent nesting it indefinitely,

Cheers,

Sebastian

> -----Mensaje original-----
> De: [hidden email]
> [mailto:[hidden email]] En nombre de Rusty
> Enviado el: Sábado, 24 de Noviembre de 2007 17:12
> Para: [hidden email]
> Asunto: [Seaside] IE not refreshing ?
>
> Hi all,
> I've been playing with seaside and scriptaculous for some
> time now, happily developing with firefox. Yesterday decided
> to try my page on IE and found out that it has some different
> behaviour for updating content.
> For example, I have a root task that implements the following #go
>
> self call: WAMyComponent new
>
> My component have some input text, that after entering some
> values and call #answer:, they don't get blanked (They does
> on firefox).
> Same thing with updating forms. The following method does
> rerender the textInput in firefox, and it just ignores it in IE:
>
> renderFormOn: html
> html form
> id: 'form';
> with: [
> html textInput
> on: #val of: self;
> onChange: (
> html updater
> id: 'form';
> triggerForm: 'form';
> callback: [
> :object | self renderFormOn: object ] ) ]
>
> Assume that #val: does something like val := anObject
> asNumber min: 10 so you can test entering 20 and seeing it
> change to 10 on unfocusing.
> The updater callback gets evaluated, but the browser just
> refuse to re render it.
>
> Any ideas of what I'm missing here ?
>
> Thanks for reading.
>
> --
> Rusty
> http://www.oxidized.com.ar/
> [hidden email]
> _______________________________________________
> seaside mailing list
> [hidden email]
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside

_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside