When to Save Data from UI Components to the Data Source"
m (correct highlight (via JWB)) |
|||
(One intermediate revision by one other user not shown) | |||
Line 1: | Line 1: | ||
+ | {{Old Version | ||
+ | |url=http://books.zkoss.org/wiki/ZK_Developer's_Reference/Data_Binding | ||
+ | |}} | ||
{{ZKDevelopersGuidePageHeader}} | {{ZKDevelopersGuidePageHeader}} | ||
− | Data Binding Manager is triggered by events, or users' activities. Thus, you must specify events in the ZUML annotation expression with < | + | Data Binding Manager is triggered by events, or users' activities. Thus, you must specify events in the ZUML annotation expression with <code>save-when</code> tag expression to tell Data Binding Manager when to save the attribute of the component into the data source. |
− | < | + | <code><component-name attribute-name="@{bean-name.attribute-name,save-when='component-id.event-name'}"/></code> |
− | * < | + | * <code>component-id</code> represents the ID of a UI component |
− | * < | + | * <code>event-name</code> represents the event name |
Multiple definition is allowed and would be called one by one. | Multiple definition is allowed and would be called one by one. | ||
− | In the following example, Data Binding Manager will save the attribute "< | + | In the following example, Data Binding Manager will save the attribute "<code>value</code>" of <code>Textbox</code> "<code>firstName</code>" into "<code>person.firstName</code>" when the <code>Textbox</code> itself fires "<code>onChange</code>" event. |
<source lang="xml" > | <source lang="xml" > |
Latest revision as of 10:40, 19 January 2022
This documentation is for an older version of ZK. For the latest one, please click here.
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 componentevent-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>
Version History
Version | Date | Content |
---|---|---|