@Events(value={"beginRender","afterRender"}) @MixinAfter public class RenderNotification extends Object
BeginRender
and AfterRender
render phases. A common use of this is to handle the "afterRender"
event to generate client-side JavaScript for content just rendered via a
Block
(this is a common Ajax use case related to partial page
rendering). Since AJAX requests don't trigger afterRender or beforeRender
render phase events in the containing component or page, this mixin provides
a way of accessing those events as component events.
An example using the Any
component within a zone:
<div t:type="Zone" id="myZone"> <t:any t:mixins="RenderNotification"> <!-- zone content -> </div> </div>The
MarkupWriter
is passed as the event context to your event handler
method(s), so your corresponding component or page class might look like:
void onBeginRenderFromMyZone(MarkupWriter writer) { writer.element("p"); writer.write("before item render"); writer.end(); } void onAfterRenderFromMyZone(MarkupWriter writer) { writer.element("p"); writer.write("after item render"); writer.end(); }As an alternative, see the
Trigger
component, which does something similar but as a component rather than a mixin.Name | Description |
---|---|
afterRender | |
beginRender |
public RenderNotification()
${project.version} - Copyright © 2003-2015 The Apache Software Foundation.