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.