[ 
https://issues.apache.org/jira/browse/WICKET-7140?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17914003#comment-17914003
 ] 

ASF GitHub Bot commented on WICKET-7140:
----------------------------------------

1azyman commented on PR #1076:
URL: https://github.com/apache/wicket/pull/1076#issuecomment-2597689292

   > Let's take a step back and think about this once again.
   > 
   >     1. The original behavior prior to your PR [WICKET-7123 default form 
submit can now be set one per form 
#971](https://github.com/apache/wicket/pull/971) was that forms could not be 
submitted via ENTER from multiline fields. This is what I would consider 
"default" browser behavior.
   
   No. 
   Original problem was that in form hierarchy (eg. parent form with some field 
and containing another form with more fields), default submit is always 
executed on last form rendered on page - which is obviously incorrect, and this 
limitation was also mentioned in docs - see comment here 
[Form.java](https://github.com/apache/wicket/blob/783722121d55530813f21e5e6bc14e9955777e5c/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Form.java#L505).
   I wanted to improve it with a little bit of javascript - remove limitation 
on form hierarchy.
   
   




> Form submit triggered by pressing return in textareas
> -----------------------------------------------------
>
>                 Key: WICKET-7140
>                 URL: https://issues.apache.org/jira/browse/WICKET-7140
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket-core
>    Affects Versions: 10.3.0
>            Reporter: Thomas Heigl
>            Priority: Major
>         Attachments: wicket-bug.zip
>
>
> Since upgrading to Wicket 10.3.0, pressing return in a textarea submits the 
> form when a `form.setDefaultButton()` is set. Downgrading to 10.2.0 fixes the 
> problem.
> Minimal reproducer:
> {code:java}
> public class HomePage extends WebPage {
>     public HomePage(final PageParameters pp) {
>        super(pp);
>        final Form<?> form = new Form<>("form");
>        form.add(new TextArea<>("textArea", new Model<>()));
>        final AjaxSubmitLink link = new AjaxSubmitLink("submit") {
>           @Override
>           protected void onSubmit(AjaxRequestTarget target) {
>              target.appendJavaScript("alert('Submitted');");
>           }
>        };
>        form.add(link);
>        form.setDefaultButton(link);
>        add(form);
>     }
> } {code}
> Click into the textarea and press return/enter.
> See also the attached quickstart.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to