[ https://issues.apache.org/jira/browse/WICKET-470?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12489690 ]
Johan Compagner commented on WICKET-470: ---------------------------------------- what do you mean with that invasive javascript? (that asb.append() stufff?) that has nothing to do with serialization! That is handled in the event handler that does this: return getCallbackScript(new AppendingStringBuffer("wicketAjaxPost('").append( getCallbackUrl()).append( "', wicketSerializeForm(document.getElementById('" + getComponent().getMarkupId() + "',false))"), null, null); You see i use the boolean false ^^ so that it doesn't try to find a parent form.. that script i have here above does nothing more then on every input (that should be a radio or check) add an onclick event handler. That again calls the above event handler code. So that Wicket.Form.serializeElementOrChildren we already have, That is that boolean you added for me! > AjaxFormComponentUpdatingBehavior won't work for RadioChoices > ------------------------------------------------------------- > > Key: WICKET-470 > URL: https://issues.apache.org/jira/browse/WICKET-470 > Project: Wicket > Issue Type: Bug > Components: wicket > Affects Versions: 1.3 > Reporter: Carlos Pita > Assigned To: Matej Knopp > Attachments: AjaxFormChoiceComponentUpdatingBehavior.java > > > Below is the generated html and js for a simple RadioChoice("sex", > Arrays.asList("M", "F")) with an attached behavior. Notice how > wicketSerialize will take the else branch for span elements, so it will > always return "". Maybe the behavior should be patched, maybe the js, maybe > there is a need for another behavior, I don't know. > <span wicket:id="sex" id="sex5" onblur="var > wcall=wicketAjaxPost('test?wicket:interface=:2:testForm:sex::IBehaviorListener:0', > wicketSerialize(document.getElementById('sex5')), function() { }, > function() { });"> > <input name="sex" type="radio" value="0" id="sex_0"/><label > for="sex_0">M</label><br /> > <input name="sex" type="radio" value="1" id="sex_1"/><label > for="sex_1">F</label><br /> > </span> > wicketSerialize = Wicket.Form.serializeElement; > Wicket.Form.serializeElement = function(e) { > var tag = e.tagName.toLowerCase(); > if (tag == "select") { > return Wicket.Form.serializeSelect(e); > } else if (tag == "input" || tag == "textarea") { > return Wicket.Form.serializeInput(e); > } else { > return ""; -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.