A"
Jumperchen (talk | contribs) |
|||
Line 9: | Line 9: | ||
= Employment/Purpose = | = Employment/Purpose = | ||
− | The same as HTML A tag. | + | The same as HTML A tag. |
+ | =Properties= | ||
+ | == Autodisable == | ||
+ | <javadoc method="setAutodisable(java.lang.String)">org.zkoss.zul.A</javadoc> is used to disable an anchor automatically, when it is clicked. It is useful to prevent the user from clicking it twice (and firing redundant requests), which is common if the request takes long to serve. | ||
+ | |||
+ | The simplest use is to specify it with <tt>self</tt> as follows. Then, the anchor is disabled when it is clicked. | ||
+ | |||
+ | <source lang="xml"> | ||
+ | <a id="ok" label="OK" autodisable="self" /> | ||
+ | </source> | ||
+ | |||
+ | If you'd like to disable several anchors, you could specify all of them in this property by separating with a comma. For example, the following disables both anchors, when one of them is clicked. | ||
+ | |||
+ | <source lang="xml"> | ||
+ | <a id="ok" label="OK" autodisable="ok,cancel" /> | ||
+ | <a id="cancel" label="Cancel" autodisable="ok,cancel" /> | ||
+ | </source> | ||
+ | |||
+ | The anchor will be enabled automatically, after the request has been served (i.e., the response has been sent back to the client). If you prefer to enable them manually (i.e., by calling <javadoc method="setDisabled(boolean)">org.zkoss.zul.A</javadoc> explicitly), you could prefix the ID with a plus (<tt>+</tt>). For example, | ||
+ | |||
+ | <source lang="xml"> | ||
+ | <a id="ok" label="OK" autodisable="+self, +cancel" /> | ||
+ | </source> | ||
+ | |||
+ | Then, you could enable them manually under the situation depending on your application's requirement, such as | ||
+ | |||
+ | <source lang="java"> | ||
+ | if (something_happens) { | ||
+ | ok.setDisabled(false); | ||
+ | cancel.setDisabled(false); | ||
+ | } | ||
+ | </source> | ||
+ | |||
+ | === Enable Autodisable for All Anchors=== | ||
+ | |||
+ | As described in [[ZK Developer's Reference/Customization/Component Properties|ZK Developer's Reference: Customization]], you could customize ZK to enable <tt>autodisable</tt> for all anchors by specifying the following in the custom language addon: | ||
+ | |||
+ | <source lang="xml"> | ||
+ | <language-addon> | ||
+ | <component> | ||
+ | <component-name>a</component-name> | ||
+ | <extends>a</extends> | ||
+ | <property> | ||
+ | <property-name>autodisable</property-name> | ||
+ | <property-value>self</property-value> | ||
+ | </property> | ||
+ | </component> | ||
+ | </language-addon> | ||
+ | </source> | ||
= Example = | = Example = |
Revision as of 09:49, 14 May 2014
A
Employment/Purpose
The same as HTML A tag.
Properties
Autodisable
A.setAutodisable(String) is used to disable an anchor automatically, when it is clicked. It is useful to prevent the user from clicking it twice (and firing redundant requests), which is common if the request takes long to serve.
The simplest use is to specify it with self as follows. Then, the anchor is disabled when it is clicked.
<a id="ok" label="OK" autodisable="self" />
If you'd like to disable several anchors, you could specify all of them in this property by separating with a comma. For example, the following disables both anchors, when one of them is clicked.
<a id="ok" label="OK" autodisable="ok,cancel" />
<a id="cancel" label="Cancel" autodisable="ok,cancel" />
The anchor will be enabled automatically, after the request has been served (i.e., the response has been sent back to the client). If you prefer to enable them manually (i.e., by calling A.setDisabled(boolean) explicitly), you could prefix the ID with a plus (+). For example,
<a id="ok" label="OK" autodisable="+self, +cancel" />
Then, you could enable them manually under the situation depending on your application's requirement, such as
if (something_happens) {
ok.setDisabled(false);
cancel.setDisabled(false);
}
Enable Autodisable for All Anchors
As described in ZK Developer's Reference: Customization, you could customize ZK to enable autodisable for all anchors by specifying the following in the custom language addon:
<language-addon>
<component>
<component-name>a</component-name>
<extends>a</extends>
<property>
<property-name>autodisable</property-name>
<property-value>self</property-value>
</property>
</component>
</language-addon>
Example
<a href="http://www.zkoss.org" label="Visit ZK!"/>
In addition, you could add child components to A too:
<a href="http://www.zkoss.org" label="Visit ZK!" image="zk.png">
<grid>
<rows>
<row>What ever content</row>
</rows>
</grid>
</a>
Notice that a child component might also handle the mouse click, so the final result of clicking on a child component is really up to which child component is used.
The href attribute can be an URI. For example,
<a href="/foo" label="Foo" />
<a href="goo" label="Goo" />
If the URI starts with "/", ZK will encode it with the application's context path. Otherwise the path is relative to the path given by Desktop.getDirectory().
Supported Events
None | None |
- Inherited Supported Events: LabelImageElement
Supported Children
*ALL
Use Cases
Version | Description | Example Location |
---|---|---|
Version History
Version | Date | Content |
---|---|---|
5.0.5 | October, 2010 | A supports any children. |