Hello again, the scripts are not included in the ajax response,
I wrote a component to show the problem in the simpliest form: ComponentWithIScript.html <html> <body jwcid="$content$"> Component with IScript </body> </html> ComponentWithIScript.jwc <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE component-specification PUBLIC "-//Apache Software Foundation//Tapestry Specification 4.0//EN" "http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd"> <component-specification allow-body="no" allow-informal-parameters="no"> <component id="onFocusScript" type="Script"> <binding name="script" value="literal:OnFocusScript.script"/> </component> </component-specification> OnFocusScript.script <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE script PUBLIC "-//Apache Software Foundation//Tapestry Script Specification 3.0//EN" "http://jakarta.apache.org/tapestry/dtd/Script_3_0.dtd"> <script> <body> <unique> <![CDATA[ function onFocusShowMessage() { alert('hello'); } ]]> </unique> </body> </script> I tried to find some examples how (or rather in what cases) to use such things like: cycle.getResponseBuilder().addBodyScript(script); ... etc...but haven't found anything interresting.. or maybe should I include script other way, like <inject property="script" type="script" object="OnFocusScript.script"/> and then render it in renderComponent method? but my component is more like composite component, that consist of standard / my components (each of it has its own updateComponent method) I'm not sure if I can add MyCompositeComponent.updateComponent extra method.. any ideas how to include he scripts to ajax response? Andreas Andreou-2 wrote: > > First see if the scripts are included in the ajax response > using something like Firebug... they should be > > Then you just need to see how you define the functions > function1, function2, function3 > > There are a few normal ways such as > 1) function function1() {...} > 2) function1=function() {...) > but the scripts (that include those definitions) are not > evaluated in the normal window/document scope when in ajax. > > Anyway, just use > window.function1=function() {...) > > > On Fri, Feb 13, 2009 at 1:32 PM, Lentz <patrykziemni...@gmail.com> wrote: >> >> Hello there, >> I'm making a migration from 4.0.2 to 4.1.6. Everything works great except >> rendering one of my components by updateComponent function. This >> component >> is an extended version of contrib:Table. It additionally consist of 3 >> IScript components. For a first time a page is rendered except that >> component (and nothing is there, just empty area, and this is ok, this >> was >> planned). Then, after submitting, during refreshing this area my >> component >> should appear. I'm trying to render it this way: >> cycle.getResponseBuilder().updateComponent("dynamicArea"); >> >> ..the component was rendered, but the scripts weren't. There are 3 >> actions >> added to my component: >> >> onfocus=function1(); >> onblur=function2(); >> onclick=function3(); >> ..and when I try to fire them, an error appears: >> no function1 found , no function2 found, etc… >> ..but if I refresh the page with F5 (normal response, not ajax), >> everything >> is ok (the javascript functions are rendered in body element). Does >> anyone >> know how to resolve this problem? >> Thanks in advance >> Patryk 'Lentz' Ziemnicki >> >> -- >> View this message in context: >> http://n2.nabble.com/T4.1.6---UpdateComponents-doesn%27t-rebuild-body-element-tp2320775p2320775.html >> Sent from the Tapestry Users mailing list archive at Nabble.com. >> > > > > -- > Andreas Andreou - andy...@apache.org - http://blog.andyhot.gr > Tapestry / Tacos developer > Open Source / JEE Consulting > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org > For additional commands, e-mail: users-h...@tapestry.apache.org > > > -- View this message in context: http://n2.nabble.com/T4.1.6---UpdateComponents-doesn%27t-rebuild-body-element-tp2320775p2341882.html Sent from the Tapestry Users mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org