Hi,

On Thu, Nov 28, 2013 at 3:03 PM, dlock <[email protected]> wrote:

> I have a DataTable with a single column.  The table has a toolbar assigned
> which provides sorting and filtering.
>
> The filtering is done via TextField that has the following
> OnChangeAjaxBehavior assigned.
>
>
> OnChangeAjaxBehavior onChangeAjaxBehavior = new OnChangeAjaxBehavior()
> {
>     @Override
>     protected void onUpdate(AjaxRequestTarget target)
>     {
>          FilteredLazyLoadingDataProvider<T, S> provider =
>              (FilteredLazyLoadingDataProvider<T, S>)
> dataTable.getDataProvider();
>          provider.filter(FilterAjaxFallbackOrderByBorder.this);
>
>          target.add(dataTable);
>          target.appendJavaScript("moveCaretToEnd(document.getElementById('"
> + m_filter.getMarkupId() + "'))");
>     }
>
>     @Override
>     protected void updateAjaxAttributes(AjaxRequestAttributes attributes)
>     {
>          super.updateAjaxAttributes(attributes);
>          attributes.setThrottlingSettings(new ThrottlingSettings(id,
> Duration.milliseconds(200), true));
>      }
> };
>
> When I view a page in Chrome/Firefox everything works as expected.  When I
> view the page in Internet Explorer 11 I observer the following issue.
>
> If the filter textfield has focus and is empty, the
> OnChangeAjaxBehavior.onUpdate method is continually called (ajax requests
> spam the server).  As soon as I enter a value into the text field, the
> filtering is performed and the ajax calls cease to spam the server.
>
> What is interesting is if I create a simple form with just a textfield in
> and assign the above OnChangeAjaxBehaviour, the textfield in the form does
> not have the same issue as the one in the table header.
>
> My app is deployed in Tomcat 7.0.30 (although the issue can also been seen
> when testing via jetty)
> Wicket 6.12
>
> I have created a quickstart that can be run to observe the issue if anyone
> is interested (what is the best way to provide it?)
>

The best is to attach it to a ticket in Jira -
https://issues.apache.org/jira/browse/WICKET

And the reason for the problem is at
https://github.com/apache/wicket/blob/master/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-jquery.js?source=c#L2620

I guess IE 11 finally implements 'oninput' event for text inputs. This is
OK, we have to improve our #isIE() method to count IE 11 as evergreen
browser.
But it seems they broke somehow the other event listeners ...


>
> I would appreciate if anyone can give me some pointers as to what is going
> on.
>
>
>
>
>
> --
> View this message in context:
> http://apache-wicket.1842946.n4.nabble.com/OnChangeAjaxBehavior-continually-triggered-tp4662704.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]
>
>

Reply via email to