Hi,
we had similar issue and could not find jira ticket for this, thus created
WICKET-5210 with quickstart.
Our workaround was changing our jQuery('#someid').. to jQuery('[id=someid]')..
to match all same (two) ids.
Rgds,
Heikki
-----Original Message-----
From: Nico [mailto:[email protected]]
Sent: 15. toukokuuta 2013 11:07
To: [email protected]
Subject: Re:aj Component twice in markup while ax refresh in Wicket 6.7
(migrated from 1.5.10)
Hi,
thanks for you quick replies! I will create the quick start and attach it to a
jira ticket.
Thanks to your hint Martin, for the moment I will use jQuery#replaceWith() to
make sure my app runs as expected.
Best
Nico
Am 14.05.2013 um 16:56 schrieb Martin Grigorov-4 [via Apache Wicket]:
> Hi,
>
> We use
> https://github.com/apache/wicket/blob/master/wicket-core/src/main/java
> /org/apache/wicket/ajax/res/js/wicket-ajax-jquery.js#L1617
> because
> it is faster than jQuery#replaceWith().
> So yes, there is a small period when both the old and the new are in
> the DOM.
> As Sven asked - please create a quicktart and attach it to a ticket so
> we can see whether we will find a solution or we will have to use the
> slower way to replace.
>
>
> On Tue, May 14, 2013 at 4:48 PM, Sven Meier <[hidden email]> wrote:
>
> > Create a quickstart and attach it to a Jira issue please.
> >
> > Sven
> >
> >
> > On 05/14/2013 04:37 PM, Nico wrote:
> >
> >> Hi
> >>
> >> I migrated my application from Wicket 1.5.10 to 6.7
> >>
> >> During testing I recognized that during an ajax update
> >> (replacement) of a component, the markup of the component is twice
> >> in the HTML markup (the old and the new markup). Thus the execution
> >> of javascript inside a component may fail due to the fact, that two
> >> components with the same id are present in the HTML markup.
> >>
> >> EXAMPLE
> >>
> >>
> >> *HTML:*
> >> <a wicket:id="testlink"**>testlink</a>
> >> <div wicket:id="testbox" style="width: 100px; height:
> >> 100px; border: 1px solid #ccc;">
> >> <script type="text/javascript&**quot;>
> >> alert('hello');
> >> </script>
> >> </div>
> >>
> >> *JAVA:*
> >> final WebMarkupContainer testbox = new
> >> WebMarkupContainer("testbox"); testbox.setOutputMarkupId(**true);
> >> add(testbox);
> >>
> >> add(new AjaxLink<Void>("testlink") {
> >> private static final long serialVersionUID = 1L;
> >>
> >> @Override
> >> public void onClick(AjaxRequestTarget target) {
> >> target.add(testbox);
> >> }
> >> });
> >>
> >>
> >> So while the ajax update is processed the 'testbox' DIV and its
> >> javascript are present twice (the old and new DIV). If the
> >> javascript is a little more complex and for example changes stuff
> >> inside the DIV, the javascript will change stuff in the old instead
> >> of the new DIV container.
> >>
> >> My javascript relies on the fact, that an id should always be
> >> present just once.
> >>
> >> Why is the old DIV not removed first, before the new DIV is
> >> appended? Can I change this behavior somehow?
> >>
> >> Thanks in advance
> >> Nico
> >>
> >>
> >>
> >> --
> >> View this message in context: http://apache-wicket.1842946.**
> >> n4.nabble.com/Component-twice-**in-markup-while-ajax-refresh-**
> >> in-Wicket-6-7-migrated-from-1-**5-10-tp4658789.html<http://apache-w
> >> icket.1842946.n4.nabble.com/Component-twice-in-markup-while-ajax-re
> >> fresh-in-Wicket-6-7-migrated-from-1-5-10-tp4658789.html>
> >> Sent from the Users forum mailing list archive at Nabble.com.
> >>
> >> ------------------------------**------------------------------**---
> >> ------ To unsubscribe, e-mail:
> >> users-unsubscribe@wicket.**apache.org<[hidden email]> For
> >> additional commands, e-mail: [hidden email]
> >>
> >>
> >
> > ------------------------------**------------------------------**----
> > ----- To unsubscribe, e-mail:
> > users-unsubscribe@wicket.**apache.org<[hidden email]> For additional
> > commands, e-mail: [hidden email]
> >
> >
>
>
> --
> Martin Grigorov
> Wicket Training & Consulting
> http://jWeekend.com <http://jweekend.com/>
>
>
> If you reply to this email, your message will be added to the discussion
> below:
> http://apache-wicket.1842946.n4.nabble.com/Component-twice-in-markup-w
> hile-ajax-refresh-in-Wicket-6-7-migrated-from-1-5-10-tp4658789p4658791
> .html To unsubscribe from Component twice in markup while ajax refresh
> in Wicket 6.7 (migrated from 1.5.10), click here.
> NAML
--
View this message in context:
http://apache-wicket.1842946.n4.nabble.com/Component-twice-in-markup-while-ajax-refresh-in-Wicket-6-7-migrated-from-1-5-10-tp4658789p4658813.html
Sent from the Users forum mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]