Updated Branches: refs/heads/master 16eda14d3 -> ed2a4ba18
Improve Wicket.Form.serializeForm() to be able to serialize nested forms (div). Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/ed2a4ba1 Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/ed2a4ba1 Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/ed2a4ba1 Branch: refs/heads/master Commit: ed2a4ba183ef84a8fc2c4a2f09558d25cff790fc Parents: 16eda14 Author: Martin Tzvetanov Grigorov <[email protected]> Authored: Fri Feb 24 12:14:58 2012 +0100 Committer: Martin Tzvetanov Grigorov <[email protected]> Committed: Fri Feb 24 12:14:58 2012 +0100 ---------------------------------------------------------------------- .../wicket/ajax/res/js/wicket-ajax-jquery.js | 21 +++++++++++++++ 1 files changed, 21 insertions(+), 0 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/ed2a4ba1/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-jquery.js ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-jquery.js b/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-jquery.js index 18f8736..0e57a16 100644 --- a/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-jquery.js +++ b/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-jquery.js @@ -1223,7 +1223,28 @@ serializeForm: function (form) { var result = [], + elements, + nodeListToArray, + nodeId; + + nodeListToArray = function (nodeList) { + var arr = []; + if (nodeList && nodeList.length) { + for (nodeId = 0; nodeId < nodeList.length; nodeId++) { + arr.push(nodeList.item(nodeId)); + } + } + return arr; + }; + + if (form && form.tagName.toLowerCase() === 'form') { elements = form.elements; + } else { + elements = nodeListToArray(form.getElementsByTagName("input")); + elements = nodeListToArray(form.getElementsByTagName("select")); + elements = nodeListToArray(form.getElementsByTagName("textarea")); + } + for (var i = 0; i < elements.length; ++i) { var el = elements[i]; if (el.name && el.name !== "") {
