Repository: wicket
Updated Branches:
refs/heads/master 0c3ec2692 -> 5837817c9
WICKET-5711 OnChangeAjaxBehavior should listen for both 'inputchange' and
'change' events for TextField and TextArea
(cherry picked from commit 6501ab7396e888b0eccd70b0b502334a69c823a8)
Conflicts:
wicket-core/src/main/java/org/apache/wicket/ajax/form/OnChangeAjaxBehavior.java
wicket-core/src/test/java/org/apache/wicket/ajax/form/OnChangeAjaxBehaviorTestPage_expected.html
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/5837817c
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/5837817c
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/5837817c
Branch: refs/heads/master
Commit: 5837817c94c7bb707f187526fb4e4e084f10d8f3
Parents: 0c3ec26
Author: Martin Tzvetanov Grigorov <[email protected]>
Authored: Tue Sep 30 14:55:04 2014 +0200
Committer: Martin Tzvetanov Grigorov <[email protected]>
Committed: Tue Sep 30 14:58:54 2014 +0200
----------------------------------------------------------------------
.../wicket/ajax/form/OnChangeAjaxBehavior.java | 19 ++++++++-----------
.../OnChangeAjaxBehaviorTestPage_expected.html | 2 +-
2 files changed, 9 insertions(+), 12 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/5837817c/wicket-core/src/main/java/org/apache/wicket/ajax/form/OnChangeAjaxBehavior.java
----------------------------------------------------------------------
diff --git
a/wicket-core/src/main/java/org/apache/wicket/ajax/form/OnChangeAjaxBehavior.java
b/wicket-core/src/main/java/org/apache/wicket/ajax/form/OnChangeAjaxBehavior.java
index f363cd8..27c229c 100644
---
a/wicket-core/src/main/java/org/apache/wicket/ajax/form/OnChangeAjaxBehavior.java
+++
b/wicket-core/src/main/java/org/apache/wicket/ajax/form/OnChangeAjaxBehavior.java
@@ -47,7 +47,8 @@ public abstract class OnChangeAjaxBehavior extends
AjaxFormComponentUpdatingBeha
* for text input form component depending on the browser.
* 'change' is used as a fallback for all other form component types.
*/
- public static final String EVENT_INPUTCHANGE = "inputchange";
+ public static final String EVENT_NAME = "inputchange change";
+
public static final String EVENT_CHANGE = "change";
/**
@@ -55,23 +56,19 @@ public abstract class OnChangeAjaxBehavior extends
AjaxFormComponentUpdatingBeha
*/
public OnChangeAjaxBehavior()
{
- super(EVENT_INPUTCHANGE + " " + EVENT_CHANGE);
+ super(EVENT_NAME);
}
@Override
protected void updateAjaxAttributes(AjaxRequestAttributes attributes)
{
super.updateAjaxAttributes(attributes);
-
+
Component component = getComponent();
-
- //textfiels and textareas will trigger this behavior with event
'inputchange'
- //while all the other components will use 'change'
- if (component instanceof TextField || component instanceof
TextArea)
- {
- attributes.setEventNames(EVENT_INPUTCHANGE);
- }
- else
+
+ // textfiels and textareas will trigger this behavior with
either 'inputchange' or 'change' events
+ // all the other components will use just 'change'
+ if (!(component instanceof TextField || component instanceof
TextArea))
{
attributes.setEventNames(EVENT_CHANGE);
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/5837817c/wicket-core/src/test/java/org/apache/wicket/ajax/form/OnChangeAjaxBehaviorTestPage_expected.html
----------------------------------------------------------------------
diff --git
a/wicket-core/src/test/java/org/apache/wicket/ajax/form/OnChangeAjaxBehaviorTestPage_expected.html
b/wicket-core/src/test/java/org/apache/wicket/ajax/form/OnChangeAjaxBehaviorTestPage_expected.html
index ec3a412..5f2e2f6 100644
---
a/wicket-core/src/test/java/org/apache/wicket/ajax/form/OnChangeAjaxBehaviorTestPage_expected.html
+++
b/wicket-core/src/test/java/org/apache/wicket/ajax/form/OnChangeAjaxBehaviorTestPage_expected.html
@@ -16,7 +16,7 @@
Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.ajax.form.OnChangeAja
<script type="text/javascript" >
/*<![CDATA[*/
Wicket.Event.add(window, "domready", function(event) {
-Wicket.Ajax.ajax({"u":"./org.apache.wicket.ajax.form.OnChangeAjaxBehaviorTestPage?0-1.IBehaviorListener.0-form-field","m":"POST","c":"field1","e":"inputchange"});;
+Wicket.Ajax.ajax({"u":"./org.apache.wicket.ajax.form.OnChangeAjaxBehaviorTestPage?0-1.IBehaviorListener.0-form-field","m":"POST","c":"field1","e":"inputchange
change"});;
Wicket.Ajax.ajax({"u":"./org.apache.wicket.ajax.form.OnChangeAjaxBehaviorTestPage?0-1.IBehaviorListener.0-form-dropDown","m":"POST","c":"dropDown2","e":"change"});;
;});
/*]]>*/