Perfect, thanks a lot! Chris
> Am 27.04.2015 um 13:21 schrieb Sven Meier <s...@meiers.net>: > > Hi, > > I've tried your sample project and identified the problem: > > Since you're adding the whole page to the AjaxRequestTarget, Wicket will > immediately issue a redirect to the current page. > But at the end of the current request, the page is detached - this removes > all temporary behaviors. > > The page is then re-rendered after the redirect, but the behavior is no > longer present to write any JavaScript to the header. > > You could change your behavior to mark itself as temporary only *after* it > has done its duty: > > @Override > public void renderHead(Component component, > IHeaderResponse response) { > super.renderHead(component, response); > response.render(OnDomReadyHeaderItem.forScript("alert('test')")); > alerted = true; > } > > @Override > public boolean isTemporary(Component component) { > return alerted; > } > > Regards > Sven > > > On 27.04.2015 12:10, Chris wrote: >> I understand - I just made a quick start project with the code below that >> shows when setting isTemporary=true JS is not called. >> https://github.com/cat1000/loadjs <https://github.com/cat1000/loadjs> >> <https://github.com/cat1000/loadjs <https://github.com/cat1000/loadjs>> >> >> If anyone can point me to the error, it would be great. >> >> Thanks, Chris >> >>> Am 27.04.2015 um 10:59 schrieb Martin Grigorov <mgrigo...@apache.org>: >>> >>> I am not sure what problem you face but it should be 'true'. >>> Otherwise the behavior remains attached to the page and any following >>> re-renderings of the page will execute this JS code again. >>> >>> Martin Grigorov >>> Wicket Training and Consulting >>> https://twitter.com/mtgrigorov >>> >>> On Mon, Apr 27, 2015 at 11:52 AM, Chris <chris...@gmx.at> wrote: >>> >>>> Hi all, >>>> >>>> thanks Martin. I have to set isTemporary=false, otherwise the JS will not >>>> be called. >>>> >>>> >>>> public void onClick(AjaxRequestTarget target) { >>>> target.add(getPage().add(new Behavior() { >>>> @Override >>>> public void renderHead(Component component, >>>> IHeaderResponse response) { >>>> super.renderHead(component, response); >>>> >>>> response.render(OnDomReadyHeaderItem.forScript("call...")); >>>> } >>>> >>>> @Override >>>> public boolean isTemporary(Component component) { >>>> return false; >>>> } >>>> })); >>>> >>>> } >>>> >>>> >>>> Chris >>>> >>>>> Am 27.04.2015 um 08:49 schrieb Martin Grigorov <mgrigo...@apache.org>: >>>>> >>>>> Hi, >>>>> >>>>> You can create a Behavior with #renderHead() to render the JS and >>>>> #isTemporary() {return true} so that it is removed automatically after >>>> the >>>>> rendering. >>>>> Add this Behavior in #onClick() to the page. >>>>> >>>>> Martin Grigorov >>>>> Wicket Training and Consulting >>>>> https://twitter.com/mtgrigorov >>>>> >>>>> On Mon, Apr 27, 2015 at 5:15 AM, Chris <chris...@gmx.at> wrote: >>>>> >>>>>> Hi all, >>>>>> >>>>>> how is it possible to load a JS function after a specific page refresh >>>>>> based on an ajax link click? >>>>>> >>>>>> Link link = new AjaxFallbackLink("link") { >>>>>> @Override >>>>>> public void onClick(AjaxRequestTarget target) { >>>>>> target.add(getPage()); >>>>>> } >>>>>> }; >>>>>> >>>>>> Thanks, Chris >>>>>> --------------------------------------------------------------------- >>>>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org >>>>>> For additional commands, e-mail: users-h...@wicket.apache.org >>>>>> >>>>>> >>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org >>>> For additional commands, e-mail: users-h...@wicket.apache.org >>>> >>>> >> > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > <mailto:users-unsubscr...@wicket.apache.org> > For additional commands, e-mail: users-h...@wicket.apache.org > <mailto:users-h...@wicket.apache.org>