У меня есть форма с текстовым полем и отправкой Ajaxbutton, когда я вставляю какое-то значение в текстовое поле, затем нажимаю кнопку отправки, выполняется некоторая бизнес-логика, написанная в OnSubmit кнопки Ajax, это нормально для нас. Но когда я вставляю какое-то значение в текстовое поле, затем нажимаю клавишу ввода, поэтому Я хочу выполнить ту же бизнес-логику, что и OnSubmit для Ajaxbutton, но она не вызывается. Пожалуйста, предложите @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);