When to Save Data from UI Components to the Data Source

From Documentation
Revision as of 03:08, 15 July 2010 by Maya001122 (talk | contribs) (Created page with '{{ZKDevelopersGuidePageHeader}} Data Binding Manager is triggered by events, or users' activities. Thus, you must specify events in the ZUML annotation expression with <tt>save-…')
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
DocumentationZK Developer's ReferenceData BindingWhen to Save Data from UI Components to the Data Source
When to Save Data from UI Components to the Data Source


Stop.png This documentation is for an older version of ZK. For the latest one, please click here.


Data Binding Manager is triggered by events, or users' activities. Thus, you must specify events in the ZUML annotation expression with save-when tag expression to tell Data Binding Manager when to save the attribute of the component into the data source.

<component-name attribute-name="@{bean-name.attribute-name,save-when='component-id.event-name''}"/>


  • component-id represents the ID of a UI component
  • event-name represents the event name

Multiple definition is allowed and would be called one by one.

In the following example, Data Binding Manager will save the attribute "value" of Textbox "firstName" into "person.firstName" when the Textbox itself fires "onChange" event.

<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit"?>

<window width="500px">
	<zscript><![CDATA[
		Person person = new Person();
		person.setFirstName("Bill");
		person.setLastName("Gates");
	]]>
	</zscript>

	<listbox>
		<listhead>
			<listheader label="First Name" width="100px"/>
			<listheader label="Last Name" width="100px"/>
			<listheader label="Full Name" width="100px"/>
		</listhead>
		<listitem>
			<listcell>
				<textbox id="firstName" value="@{person.firstName, save-when='self.onChange'}"/>
			</listcell>
			<listcell>
				<textbox id="lastName" value="@{person.lastName, save-when='self.onChange'}"/>
			</listcell>
			<listcell label="@{person.fullName}"/>
		</listitem>
	</listbox>
</window>



Last Update : 2010/07/15

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