Searchbox"

From Documentation
m (example)
m (properties)
Line 5: Line 5:
 
= Searchbox =
 
= Searchbox =
  
*Java API: <javadoc>org.zkoss..zkmax.zul.Searchbox</javadoc>
+
*Java API: <javadoc>org.zkoss.zkmax.zul.Searchbox</javadoc>
 
*JavaScript API: <javadoc directory="jsdoc">zkmax.inp.Searchbox</javadoc>
 
*JavaScript API: <javadoc directory="jsdoc">zkmax.inp.Searchbox</javadoc>
 
{{ZK EE}}
 
{{ZK EE}}
Line 40: Line 40:
  
 
==autoclose==
 
==autoclose==
 +
 +
Sets whether to automatically close the list if a user is selected any item. The default value is <code>false</code>. It means even the user selected an item, the list still remains open. You might want to set it as <code>true</code> in single selection mode (multiple=false).
 +
 
==disabled==
 
==disabled==
 +
 +
Sets whether it is disabled. A list can be still opened programmatically by calling <code>open()</code> even the component is in disabled state.
 +
 
==itemConverter==
 
==itemConverter==
 +
 +
By implementing your own <javadoc>org.zkoss.util.Converter</javadoc>, you can generate the label that represents the selected items. The default implementation is joining all the <code>toString()</code> result of items by commas.
 +
 
==itemRenderer==
 
==itemRenderer==
 +
 +
By implementing your own <javadoc>org.zkoss.zul.ItemRenderer</javadoc>, you can generate the HTML fragment for the data model. Normally you would like to use the default implementation and use <code>&lt;template name="model"&gt;</code> instead.
 +
 
==model==
 
==model==
 +
 +
Since this component doesn't accept any child, you must specify a <code>ListModel</code>.
 +
 +
If a <javadoc>org.zkoss.zul.ListSubModel</javadoc> is provided, all the items will not be rendered to the client directly. Instead, users must type a keyword to search for a subset of the list. It's suitable for a large model.
 +
 
==multiple==
 
==multiple==
 +
 +
Sets whether multiple selections are allowed.
 +
 
==open==
 
==open==
 +
 +
Drops down or closes the list of items.
 +
 
==placeholder==
 
==placeholder==
 +
 +
Sets the placeholder text that is displayed when the selected item is empty.
 +
 
==searchMessage==
 
==searchMessage==
 +
 +
Sets the placeholder message of the search text field. The default is "Type to search".
 +
 
==selectedItem==
 
==selectedItem==
 +
 +
Returns the selected item, or null if no item is selected. When multiple is true, it returns the first of the selected items.
 +
 +
Don't use MVVM annotations in both <code>selectedItem</code> and <code>selectedItems</code> at the same time since <code>@save</code> <code>selectedItem</code> will deselect all of the currently selected items first.
 +
 
==selectedItems==
 
==selectedItems==
 +
 +
Returns all selected items.
  
 
=Supported Events=
 
=Supported Events=

Revision as of 07:25, 24 September 2019

WarningTriangle-32x32.png This page is under construction, so we cannot guarantee the accuracy of the content!

Searchbox

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion ee.png
[ since 9.0.0 ]

Employment/Purpose

A searchbox.

Example

<zscript>
ListModel model = new ListModelArray(new String[] {
  "North America", "South America", "Europe", "Asia", "Africa", "Oceania", "Antarctica"
});
</zscript>
<searchbox model="${model}" placeholder="An unknown place" autoclose="true">
   <template name="model">
       <html><![CDATA[
       <i class="z-icon-globe"></i> ${each}
       ]]></html>
   </template>
</searchbox>

Mouseless Entry Searchbox

  • UP or DOWN to pop up the list if focused.
  • ESC to close the list.
  • UP, DOWN, HOME, END, PAGE UP and PAGE DOWN to change the selection of the items from the list.
  • ENTER to confirm the change of selection.

Properties

autoclose

Sets whether to automatically close the list if a user is selected any item. The default value is false. It means even the user selected an item, the list still remains open. You might want to set it as true in single selection mode (multiple=false).

disabled

Sets whether it is disabled. A list can be still opened programmatically by calling open() even the component is in disabled state.

itemConverter

By implementing your own Converter, you can generate the label that represents the selected items. The default implementation is joining all the toString() result of items by commas.

itemRenderer

By implementing your own ItemRenderer, you can generate the HTML fragment for the data model. Normally you would like to use the default implementation and use <template name="model"> instead.

model

Since this component doesn't accept any child, you must specify a ListModel.

If a ListSubModel is provided, all the items will not be rendered to the client directly. Instead, users must type a keyword to search for a subset of the list. It's suitable for a large model.

multiple

Sets whether multiple selections are allowed.

open

Drops down or closes the list of items.

placeholder

Sets the placeholder text that is displayed when the selected item is empty.

searchMessage

Sets the placeholder message of the search text field. The default is "Type to search".

selectedItem

Returns the selected item, or null if no item is selected. When multiple is true, it returns the first of the selected items.

Don't use MVVM annotations in both selectedItem and selectedItems at the same time since @save selectedItem will deselect all of the currently selected items first.

selectedItems

Returns all selected items.

Supported Events

Name
Event Type
onSelect
Event: SelectEvent

Represents an event caused by user's the list selection is changed at the client.

onOpen
Event: OpenEvent

Denotes that the user has opened or closed a component. Note: unlike onClose, this event is only a notification. The client sends this event after opening or closing the component.

onSearching
Event: Event

Notifies one that the user is searching by keywords.

Supported Children

* none

Version History

Last Update : 2019/09/24


Version Date Content
9.0.0 September 2019 ZK-4380: Provide a Searchbox component



Last Update : 2019/09/24

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