Texts"

From Documentation
m
Line 72: Line 72:
  
 
==The nested XML content==
 
==The nested XML content==
  [since 5.5.0]
+
  [since 6.0.0]
  
Since ZK 5.5.0, components that consider the text as a property's value will accept the XML fragment. For example,
+
Since ZK 6, components that consider the text as a property's value will accept the XML fragment. For example,
  
 
<source lang="xml">
 
<source lang="xml">
Line 106: Line 106:
 
| <javadoc>org.zkoss.zul.Tab</javadoc> allow the XML text as the label.  
 
| <javadoc>org.zkoss.zul.Tab</javadoc> allow the XML text as the label.  
 
|-
 
|-
| 5.5.0
+
| 6.0.0
 
| September 2011
 
| September 2011
 
| The nested XML content was supported.
 
| The nested XML content was supported.

Revision as of 05:57, 3 October 2011

In general, a XML text is interpreted as a label component. For example,

<window>
  Begin ${foo.whatever}
</window>

is equivalent to

<window>
  <label value="Begin ${foo.whatever}"/>
</window>

Components consider the nested content as proerty

However, a component can be designed to accept the nested text as the value of a component property. In other words, a component designer could decide to make ZK Loader interpret the nest text as the value of a predefined property. For example, Html is one of this kind of components, and

<html>Begin ${foo.whatever}</html>

is equivalent to

<html content="Begin ${foo.whatever}"/>

It is designed to make it easy to specify multiple-line value, so it is usually used by particular components that requires the multi-line value.

Here is a list of components that interprets the XML text as a property's value.

Component Name Property Name Method
a label A.setLabel(String)
button label Button.setLabel(String)
comboitem content Comboitem.setContent(String)
html content Html.setContent(String)
label value Label.setValue(String)
script content Script.setContent(String)
style content Style.setContent(String)
tab label Tab.setLabel(String) (since 5.0.7)

The nested XML content

[since 6.0.0]

Since ZK 6, components that consider the text as a property's value will accept the XML fragment. For example,

<html>
  <ol style="border: 1px solid blue">
    <li>Apple</li>
    <li>Orange</li>
  </ol>
</html>

In other words, you don't have to escape the special characters (< and >) with CDATA. In addition, you could leverage the full power of ZUML such as the zk element and the forEach attribute. For example,

<html>
  <ol>
    <li forEach="Apple, Orange">${each}</li>
  </ol>
</html>

Note that the nested content is part of the ZUML page, so it must be a legal XML document.

Version History

Last Update : 2011/10/03


Version Date Content
5.0.7 April 2011 Tab allow the XML text as the label.
6.0.0 September 2011 The nested XML content was supported.



Last Update : 2011/10/03

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