From Documentation



An edit box for holding a constrained integer.


ZKComRef Spinner.png

 <window title="Spinner" border="normal" width="150px">
     <spinner />

In-place Editing

Fixed Width

<spinner width="100px" inplace="true" value="30" />

Dynamic Width

Because inplace editing function in ZK is pure client side action, so we can use client api to modify the width (server side do not need to know)

ZK Component Reference-Input-Spinner-inplace.jpg

<zk xmlns:c="client">
  <spinner inplace="true" value="240" width="30px" c:onFocus='this.setWidth("60px")' c:onBlur='this.setWidth("30px")' />



You are able to format the field by providing specifying the attribute with a formatting string. The default value is null.

<spinner format="#,##0.##"/>

Since 8.5.2 You can provide a locale to format the number by specifying the String starts with "locale:"

<spinner format="locale:zh-TW"/>


You could specify what value to accept for input controls by use of the constraint property. It could be a combination of no empty and the minimum and maximum to spinner.

To specify two or more constraints, use comma to separate them as follows.

<spinner constraint="no empty,min -2 max 6"/>

If you prefer to display different message to the default one, you can append the error message to the constraint with a colon.

<spinner constraint="no empty,min -2 max 6: between -2 to 6"/>


  • The error message, if specified, must be the last element and start with colon.
  • To support multiple languages, you could use the 「l」 function as depicted in the Internationalization chapter.
<spinner constraint="no empty,min -2 max 6: ${c:l('err.msg.spinner')}"/>

Inherited Functions

Please refer to NumberInputElement for inherited functions.

Supported Events

Event Type
None None

Supported Molds

Available molds of a component are defined in lang.xml embedded in zul.jar.

Spinner mold default.png
Spinner mold rounded.png

Since 5.0.0

Supported Children


Use Cases

Version Description Example Location

Version History

Last Update : 2023/05/29

Version Date Content

Last Update : 2023/05/29

Copyright © Potix Corporation. This article is licensed under GNU Free Documentation License.