Ajax Spinner
Components / Samples
Description
Spinner
is a form component, its value can be validated and submitted through a form.
Since
wicket-jquery-ui-core-1.4.0wicket-jquery-ui-core-6.2.0
Sources
package com.googlecode.wicket.jquery.ui.samples.jqueryui.spinner; import org.apache.wicket.Component; import org.apache.wicket.ajax.AjaxRequestTarget; import org.apache.wicket.markup.html.form.Form; import org.apache.wicket.markup.html.panel.FeedbackPanel; import org.apache.wicket.model.Model; import com.googlecode.wicket.jquery.ui.form.button.AjaxButton; import com.googlecode.wicket.jquery.ui.form.button.Button; import com.googlecode.wicket.jquery.ui.form.spinner.AjaxSpinner; import com.googlecode.wicket.jquery.ui.panel.JQueryFeedbackPanel; public class AjaxSpinnerPage extends AbstractSpinnerPage { private static final long serialVersionUID = 1L; private FeedbackPanel feedback; public AjaxSpinnerPage() { final Form<Integer> form = new Form<Integer>("form", Model.of(0)); this.add(form); // FeedbackPanel // this.feedback = new JQueryFeedbackPanel("feedback"); form.add(this.feedback.setOutputMarkupId(true)); // Spinner // final AjaxSpinner<Integer> spinner = new AjaxSpinner<Integer>("spinner", form.getModel(), Integer.class) { private static final long serialVersionUID = 1L; @Override public void onSpin(AjaxRequestTarget target, Integer value) { this.info("Spinned to : " + value); target.add(feedback); } }; form.add(spinner); // Buttons // form.add(new Button("submit") { private static final long serialVersionUID = 1L; @Override public void onSubmit() { AjaxSpinnerPage.this.info(this, form); } }); form.add(new AjaxButton("button") { private static final long serialVersionUID = 1L; @Override protected void onError(AjaxRequestTarget target) { target.add(AjaxSpinnerPage.this.feedback); } @Override protected void onSubmit(AjaxRequestTarget target) { AjaxSpinnerPage.this.info(this, form); target.add(form); } }); } private void info(Component component, Form<?> form) { this.info(component.getMarkupId() + " has been clicked"); this.info("The model object is: " + form.getModelObject()); } }
<!DOCTYPE html> <html xmlns:wicket="http://wicket.apache.org"> <head> <wicket:head> <title>Wicket jQuery UI: ajax spinner</title> </wicket:head> </head> <body> <wicket:extend> <div id="demo-panel"> <form wicket:id="form"> <input wicket:id="spinner" type="text" style="width: 35px;" /><br/> <br/> <input wicket:id="submit" type="submit" value="Submit" /> <button wicket:id="button">Ajax Button</button> <br/><br/> <div wicket:id="feedback" style="width: 360px;"></div> </form> </div> </wicket:extend> </body> </html>