在 wicket7 中形成并输入密钥提交

Form and Enter key submission in wicket7

我有带有文本框的表单并提交 Ajaxbutton,当我在文本框中插入一些值然后单击提交按钮时,将执行一些在 Ajaxbutton 的 OnSubmit 中编写的业务逻辑,这对我们来说很好但是当我在文本框中插入一些值时然后按回车键,所以我想执行与 Ajaxbutton 的 OnSubmit 相同的业务逻辑,但它没有调用,请建议@martin-g。我想更喜欢检票口代码而不是 JavaScript.

下面是我在应用程序中的代码。

<Form wicket:id="FilterForm">
    <input type="textbox" wicket:id="input"></input>
    <input type="submit" wicket:id="submit"/>
</Form>

对于java代码:

final Form filterForm = new Form("FilterForm"){}
add(filterForm);
filterForm.setMarkupId("filterForm");
filterForm.setOutputMarkupId(true);

TextField<String> docIdInput = new TextField("input", new PropertyModel(this.searchObj, "searchString"));
    filterForm.add(docIdInput);
    docIdInput.setOutputMarkupId(true);

AjaxButton docIdInputSubmitButton = new AjaxButton("submit") {

        private static final long serialVersionUID = 1L;
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
        //do buisness logic
        }

filterForm.add(docIdInputSubmitButton);

您可以将您的按钮设置为表单的默认按钮:

filterForm.setDefaultButton(docIdInputSubmitButton);

Wicket 会为您生成一些 JavaScript,在输入时触发您的提交按钮。