If it's not obvious, that example link was to a page that loads
another resource via Ajax.Updater. The script is, of course, in that
other resource, which is here:
http://jsbin.com/ufaji5

-- T.J. :-)

On Apr 8, 2:37 pm, "T.J. Crowder" <t...@crowdersoftware.com> wrote:
> Hi,
>
> > well. I read in the docs that pure javascript returned gets eval'd and
> > processed, but that isn't what I am experiencing.
>
> Those same docs[1] say that it's turned off by default. ;-) You need
> to specify `evalScripts: true` in the options you pass into
> `Ajax.Updater` to tell it to turn it on.
>
> But you have another problem: Your script is calling `document.write`.
> You can't use `document.write` after the initial parsing of the page
> is done (or rather, you *can*, but it won't do what you want it to do
> -- instead, it will completely tear down the entire page and start a
> new one). Just have the PHP output the actual HTML you want to use,
> rather than outputting script that then outputs HTML. If you need to
> output something different based on a client-side piece of
> information, either pass that information to your PHP script and
> handle the branching there, or have the result return placeholder
> elements that you then update by making calls to Prototype's
> `Element#update` and such. Here's a gratuitous example:http://jsbin.com/ofate4
>
> [1]http://api.prototypejs.org/ajax/Ajax/Updater/
>
> HTH,
> --
> T.J. Crowder
> Independent Software Engineer
> tj / crowder software / com
> www / crowder software / com
>
> On Apr 7, 4:41 pm, cszalaj <csza...@gmail.com> wrote:
>
>
>
>
>
>
>
> > We are using the Ajax.updater.  A php script determines the response
> > that is returned to the updater to be passed to the <div> for
> > updating. In the case that the success message is returned upon
> > successful form submission, we need some javascript to be processed as
> > well. I read in the docs that pure javascript returned gets eval'd and
> > processed, but that isn't what I am experiencing. The php function
> > that returns the script is:
>
> > public function etag_thanksQuickContact(&$domDoc) {
> >     return '<script type="application/
> > javascript">document.write("<h1>Thank You</h1><p>Thank you for
> > contacting us.</p>");</script>';
> >   }
>
> > This is simplified to for testing purposes. The real script that I
> > want eval'd will include a few other statements, but I am using this
> > to make sure that the script is running properly.
>
> > The Ajax.updater javascript we have is:
> > function qcSubmit() {
> >   new Ajax.Updater('qcContent', '/h/contact/QuickContact', {
> >     parameters: {
> >       name: $F('name'),
> >       email: $F('email'),
> >       telephone: $F('telephone'),
> >       comment: $F('comment')
> >     }
> >   });
>
> > }
>
> > If I write the PHP function to just return the thank you text, and not
> > a javascript that prints it, then it returns fine. When I try to write
> > it with Javascript, it isn't eval'ing. What do I need to do
> > differently?

-- 
You received this message because you are subscribed to the Google Groups 
"Prototype & script.aculo.us" group.
To post to this group, send email to prototype-scriptaculous@googlegroups.com.
To unsubscribe from this group, send email to 
prototype-scriptaculous+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/prototype-scriptaculous?hl=en.

Reply via email to