Repository: wicket Updated Branches: refs/heads/master 7593debbd -> 0c79aa7fb
WICKET-5879 Using an AjaxSubmitLink to hide its form results in an exception Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/0c79aa7f Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/0c79aa7f Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/0c79aa7f Branch: refs/heads/master Commit: 0c79aa7fb2e820d73ed5eb58b66d9ef63b424941 Parents: 7593deb Author: Andrea Del Bene <[email protected]> Authored: Tue Apr 14 10:49:50 2015 +0200 Committer: Andrea Del Bene <[email protected]> Committed: Tue Apr 14 10:55:20 2015 +0200 ---------------------------------------------------------------------- .../ajax/markup/html/form/AjaxSubmitLink.java | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/0c79aa7f/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxSubmitLink.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxSubmitLink.java b/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxSubmitLink.java index 5f564eb..619e289 100644 --- a/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxSubmitLink.java +++ b/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxSubmitLink.java @@ -101,8 +101,6 @@ public abstract class AjaxSubmitLink extends AbstractSubmitLink protected void updateAjaxAttributes(AjaxRequestAttributes attributes) { super.updateAjaxAttributes(attributes); - //prevent the default form submit - attributes.setPreventDefault(true); AjaxSubmitLink.this.updateAjaxAttributes(attributes); } @@ -147,17 +145,25 @@ public abstract class AjaxSubmitLink extends AbstractSubmitLink if (isEnabledInHierarchy()) { - if (tag.getName().equalsIgnoreCase("a") || tag.getName().equalsIgnoreCase("link") - || tag.getName().equalsIgnoreCase("area")) + String tagName = tag.getName(); + + if (tagName.equalsIgnoreCase("a") || tagName.equalsIgnoreCase("link") + || tagName.equalsIgnoreCase("area")) { // disable any href attr in markup tag.put("href", "javascript:;"); } - else if (tag.getName().equalsIgnoreCase("button")) + else if (tagName.equalsIgnoreCase("button")) { // WICKET-5597 prevent default submit tag.put("type", "button"); } + else if (tagName.equalsIgnoreCase("input") && + "submit".equalsIgnoreCase(tag.getAttribute("type"))) + { + // WICKET-5879 prevent default submit + tag.getAttributes().put("type", "button"); + } } else {
