I propose the following solution (implemented in CalendarPanel, tested in IE, FF, Chrome): 1) all js init placed into special function with name "omComponentInit" 2) MenuPanel will call this function automatically on component load
please see latest CalendarPanel sources for details (commited revision 1388315) If you like this implementation I can add it to all other panels (and we will need to use it with all future panels) On Fri, Sep 21, 2012 at 9:03 AM, Maxim Solodovnik <[email protected]>wrote: > I would like to find solution which will let me to write code in the > markup file. (not sure if it possible) > > > On Fri, Sep 21, 2012 at 1:09 AM, [email protected] < > [email protected]> wrote: > >> This revision already contained a fix for the ConfigPanel to execute >> Ajax both times: >> 1) Initially >> 2) when the panel is reloaded >> >> I removed it when I was removing the jQuery plugin for datatables again. >> >> >> https://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/configurations/ConfigsPanel.java?revision=1385325&view=markup >> >> Sebastian >> >> 2012/9/20 Maxim Solodovnik <[email protected]>: >> > IE seems to work as expected. >> > Will take a look at "panel double load". >> > >> > >> > On Wed, Sep 19, 2012 at 4:19 PM, Maxim Solodovnik <[email protected] >> > >> > wrote: >> >> >> >> I was able to reproduce IE issue will take a look at it. >> >> >> >> >> >> On Wed, Sep 19, 2012 at 1:17 AM, Maxim Solodovnik < >> [email protected]> >> >> wrote: >> >>> >> >>> That's _really_ weird >> >>> Did implement code like this in my previous projects, will check >> >>> tomorrow, or the day after tomorrow ... >> >>> >> >>> >> >>> On Wed, Sep 19, 2012 at 1:11 AM, [email protected] >> >>> <[email protected]> wrote: >> >>>> >> >>>> I don't think that there is need to disable anything at the moment. >> >>>> Btw: In IE9 not even the login box is visible. You just get a blank >> >>>> page with the "OpenMeetings" text on the top left. In IE9 it is >> really >> >>>> a browser issue :) >> >>>> >> >>>> Sebastian >> >>>> >> >>>> 2012/9/18 Maxim Solodovnik <[email protected]>: >> >>>> > Was able to reproduce that :( >> >>>> > Will dig into it >> >>>> > As a workaround I can disable current menu item ... >> >>>> > >> >>>> > What do you think? >> >>>> > >> >>>> > >> >>>> > On Wed, Sep 19, 2012 at 12:43 AM, [email protected] >> >>>> > <[email protected]> wrote: >> >>>> >> >> >>>> >> Hi Maxim, >> >>>> >> >> >>>> >> the calendar code does neither work with FF (latest) or Chrome. >> >>>> >> The second time you load the calendar via the Menu it will show >> just >> >>>> >> a >> >>>> >> blank page. >> >>>> >> I don't think that it is a browser specific issue. The JS code is >> >>>> >> simply not executed the second time you load the Panel in the same >> >>>> >> session/without pressing f5. >> >>>> >> >> >>>> >> Sebastian >> >>>> >> >> >>>> >> 2012/9/16 Maxim Solodovnik <[email protected]>: >> >>>> >> > I'm currently using following calls in Wicket 6: >> >>>> >> > >> >>>> >> > add(new AbstractAjaxBehavior() { >> >>>> >> > public void onRequest() { >> >>>> >> > } >> >>>> >> > @Override >> >>>> >> > public void renderHead(Component component, IHeaderResponse >> >>>> >> > response) { >> >>>> >> > response.render(JavaScriptHeaderItem.forScript( "alert('AAA');", >> >>>> >> > "alertScript")); >> >>>> >> > } >> >>>> >> > }); >> >>>> >> > >> >>>> >> > >> >>>> >> > On Sun, Sep 16, 2012 at 11:43 PM, [email protected] < >> >>>> >> > [email protected]> wrote: >> >>>> >> > >> >>>> >> >> @Timur: Thanks but in Wicket 6.0.0 there is no static method >> >>>> >> >> AjaxRequestTarget.get() anymore: >> >>>> >> >> >> >>>> >> >> >> >>>> >> >> >> >>>> >> >> >> http://ci.apache.org/projects/wicket/apidocs/6.0.x/org/apache/wicket/ajax/AjaxRequestTarget.html >> >>>> >> >> >> >>>> >> >> Sebastian >> >>>> >> >> >> >>>> >> >> 2012/9/16 Тимур Тлеукенов <[email protected]>: >> >>>> >> >> > Hello, >> >>>> >> >> > >> >>>> >> >> > Within AJAX request AjaxRequestTarget can be accessed via >> >>>> >> >> > AjaxRequestTarget.get(). >> >>>> >> >> > Script can be appended, for example, in >> >>>> >> >> > onBeforeReder/onRender/onAfterRender method of Component. >> >>>> >> >> > >> >>>> >> >> > 2012/9/16 [email protected] <[email protected]> >> >>>> >> >> > >> >>>> >> >> >> Hi, >> >>>> >> >> >> >> >>>> >> >> >> we build a single page application and want to extend that >> with >> >>>> >> >> >> some >> >>>> >> >> >> jQuery plugins. >> >>>> >> >> >> >> >>>> >> >> >> The issue is that "$(document).ready( function()" is not >> called >> >>>> >> >> >> (or >> >>>> >> >> >> only the first time) a Panel is loaded via Ajax. >> >>>> >> >> >> >> >>>> >> >> >> Example1 "JavaScript in HTML wicket:head": >> >>>> >> >> >> >> >>>> >> >> >> >> >>>> >> >> >> >>>> >> >> >> >>>> >> >> >> https://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/configurations/ConfigsPanel.html?view=markup >> >>>> >> >> >> Line 27ff >> >>>> >> >> >> => Works, but only one time: The first time you initialize >> the >> >>>> >> >> >> Panel, >> >>>> >> >> >> $(document).ready is executed, the second time you click on >> the >> >>>> >> >> >> menu >> >>>> >> >> >> item / load the Panel via Ajax,the JavaScript is not >> executed >> >>>> >> >> >> >> >>>> >> >> >> Example2 "JavaScript pragmatically injected by overwriting >> >>>> >> >> >> renderHead(HtmlHeaderContainer container)": >> >>>> >> >> >> >> >>>> >> >> >> >> >>>> >> >> >> >>>> >> >> >> >>>> >> >> >> https://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/configurations/ConfigsPanel.java?view=markup >> >>>> >> >> >> Line 45ff >> >>>> >> >> >> => Works but $(document).ready is executed before the table >> >>>> >> >> >> with the >> >>>> >> >> >> id "example" is rendered in the UI, so you can't see any >> effect >> >>>> >> >> >> >> >>>> >> >> >> Additionally to the load of the Ajax Panel, we need to >> trigger >> >>>> >> >> >> an >> >>>> >> >> >> JavaScript event every time the table dynamically loads new >> >>>> >> >> >> records >> >>>> >> >> >> to >> >>>> >> >> >> the grid/table. >> >>>> >> >> >> >> >>>> >> >> >> From examples in the Net I can ready that AjaxRequestTarget >> is >> >>>> >> >> >> used >> >>>> >> >> >> for that. However the Panel itself does not provide a >> method to >> >>>> >> >> >> overwrite or similar to catch such events globally for a the >> >>>> >> >> >> component. >> >>>> >> >> >> >> >>>> >> >> >> I guess this is a common issue in Wicket, how do folks solve >> >>>> >> >> >> it? >> >>>> >> >> >> >> >>>> >> >> >> Thanks! >> >>>> >> >> >> Sebastian >> >>>> >> >> >> >> >>>> >> >> >> -- >> >>>> >> >> >> Sebastian Wagner >> >>>> >> >> >> https://twitter.com/#!/dead_lock >> >>>> >> >> >> http://www.webbase-design.de >> >>>> >> >> >> http://www.wagner-sebastian.com >> >>>> >> >> >> [email protected] >> >>>> >> >> >> >> >>>> >> >> > >> >>>> >> >> > >> >>>> >> >> > >> >>>> >> >> > -- >> >>>> >> >> > Timur Tleukenov >> >>>> >> >> >> >>>> >> >> >> >>>> >> >> >> >>>> >> >> -- >> >>>> >> >> Sebastian Wagner >> >>>> >> >> https://twitter.com/#!/dead_lock >> >>>> >> >> http://www.webbase-design.de >> >>>> >> >> http://www.wagner-sebastian.com >> >>>> >> >> [email protected] >> >>>> >> >> >> >>>> >> > >> >>>> >> > >> >>>> >> > >> >>>> >> > -- >> >>>> >> > WBR >> >>>> >> > Maxim aka solomax >> >>>> >> >> >>>> >> >> >>>> >> >> >>>> >> -- >> >>>> >> Sebastian Wagner >> >>>> >> https://twitter.com/#!/dead_lock >> >>>> >> http://www.webbase-design.de >> >>>> >> http://www.wagner-sebastian.com >> >>>> >> [email protected] >> >>>> > >> >>>> > >> >>>> > >> >>>> > >> >>>> > -- >> >>>> > WBR >> >>>> > Maxim aka solomax >> >>>> >> >>>> >> >>>> >> >>>> -- >> >>>> Sebastian Wagner >> >>>> https://twitter.com/#!/dead_lock >> >>>> http://www.webbase-design.de >> >>>> http://www.wagner-sebastian.com >> >>>> [email protected] >> >>> >> >>> >> >>> >> >>> >> >>> -- >> >>> WBR >> >>> Maxim aka solomax >> >> >> >> >> >> >> >> >> >> -- >> >> WBR >> >> Maxim aka solomax >> > >> > >> > >> > >> > -- >> > WBR >> > Maxim aka solomax >> >> >> >> -- >> Sebastian Wagner >> https://twitter.com/#!/dead_lock >> http://www.webbase-design.de >> http://www.wagner-sebastian.com >> [email protected] >> > > > > -- > WBR > Maxim aka solomax > -- WBR Maxim aka solomax
