HTML Event Action Builder

 

 

In this topic ...

Quick Tips

Specifying Inputs

 

Related Topics ...

Overview: Creating Forms

HTML Guidelines

The HTML event action builder allows you to associate a function with an HTML behavioral attribute. The HTML behavioral attributes are those that correspond to HTML event handlers, such as OnClick or OnChange, for <input/> tags. The HTML event action builder can only define actions for the events that a particular tag supports.

The HTML event action builder is created for a specified HTML tag on a page. The builder sets the event attribute value through a JavaScript call, associating the correct function behavior with the specified event on the selected tag. More than one HTML event action can be associated with an HTML tag, and functions are executed in the order of the HTML event action builder call in the builder call list.

Behaviors can be set for controls and tags that can accept user input. The HTML event action is also useful in the case when a certain type of attribute cannot be set in the builder dialog for a particular builder. For example, the select builder editor allows you to set only the OnChange function. In order to set the OnClick function, add a HTML event action builder call to your model.

 

Quick tips

  • Use the HTML event action builder to define actions for a particular browser event.
  • Not all HTML tags support behavioral attributes and a given tag might not support all behavior event types. Refer to an HTML reference to check if a particular event is supported by a given tag.
  • Profile this builder to alter the characteristics of a named HTML tag.

 

Specifying inputs

This builder takes the inputs described in the table below. For help on inputs common to many or all builders such as those in the Properties and HTML Attributes input groups, see Using the Builder Call Editor.

Input Name Description
Name Enter a name for this builder call. The designer tool displays this name in the builder call list.
Page Location Use the Page Location input to specify the page or pages on which this builder call will act.

See Locating control builders on pages for detailed documentation about the Page Location input and page location syntax.

Event Name Use the select list to choose the event name for which you want to add an action. The list of available actions depends on the control associated with the named tag on which the HTML event action builder call operates.
Action Type Defines the behavior of the of the action. Choose an action type based on the action that will process the onClick event and if you want to process any form inputs as part of that action.

Submit form and invoke action - Choose this option if the specified action is a method in the model or linked Java object and that method processes the inputs to the form on which the tag resides.

Submit form to URL - Choose this option if the specified action is a URL outside of the factory runtime that will process the inputs to a form. The specified URL receives the form input values as name/value pairs appended to the URL.

Link to an action - Choose this option if the specified action is a method in the model or linked Java object (including service calls). This option acts as a simple link, transferring control directly to the specified URL. The specified action cannot process any form inputs.

Link to a URL - Choose this option if you want to navigate to a non-Factory URL. The URL cannot process any form inputs.

Run a script - Choose this option of you want to run some client-side JavaScript when the user clicks on the button. The script cannot process any form inputs.

Action model action to execute, or link to, as a result of the event you specified for the Event Name input.
Form Name If the builder is in one form or frame and the form to be submitted is in another, enter the name of the form whose inputs you want to submit.
Arguments
Input Mappings We can pass arguments to the specified action by adding argument names and the value to be passed to it. Use the Reference Chooser to specify input values or values returned by methods or service calls as the value to be passed to an argument for the specified action. See Passing arguments to actions for more information.
Post-Action Behavior
Post-Action Behavior Select what should happen after the action launched by the event has completed.

Default

In most cases this displays the output generated by the action. One exception to this is when the action is run from inside a container that specifies that the outermost page gets rendered after the action runs. In the exception case, default would not display the output, but refresh the outermost page.

Refresh specified page location after running action

The outermost page is not refreshed. Instead, new HTML for the specified region is re-calculated after the action runs, and this HTML is sent to the client where it replaces the existing HTML. If the Replace "id" Matches is checked, then the HTML produced by the action is examined for elements that have ID attribute values. If ID attribute values are found, then the corresponding elements in the page will have their HTML replaced.

Note that If Ajax is disabled, the default post-action behavior is used without loss of functionality. Ajax enablement is controlled through the Global Ajax Enablement builder and profiling rather than changing inputs in a large number of builders.

Replace specified location with action results

This is good for tooltips, incremental validation, and other simple information calculated on the server.

Note that If Ajax is disabled, the default post-action behavior is used without loss of functionality. Ajax enablement is controlled through the Global Ajax Enablement builder and profiling rather than changing inputs in a large number of builders.

Evaluate action results as JavaScript

Run the main action, and evaluate what it returns as JavaScript.

Always reload top-most page after running action

This is very similar to default, but overrides behavior that prevents the top-most page from refreshing (such as those behaviors introduced by the asynchronous client loader builder). This option would be necessary in cases where portal event and render phases need to be carried out to enable portlet-to-portlet communication to function properly.

Show action results "stand-alone": display no containing pages

This option is similar to default, but it ensures that even if the model is running in a portal or model container, the action only returns the results of the specified action, not the containing portal or other surrounding pages. This option is ideal for lower-level Ajax or related functionality such as pop-ups, computed images, or Excel export.
Advanced
Target The window or frame which will display the results of the action. If you do not set this value, the current window/frame will be the target. Valid entries for the Target value include...

  • _self - Display results in the frame containing the form. If target is not specified, _self is the default.
  • _blank - Display results in a new browser window.
  • _parent - Display results in the frameset above the frame containing the form.
  • _top - Display results the topmost frameset.
  • We can also specify the name of a frame in the current frameset.

Note that All of these targets are relative to the form being processed, not the builder itself.

Rendering mode If you know that the specified action returns a specific page, set Rendering Mode to Normal. If you do not know the specific page that gets returned, set Rendering Mode to Return Outermost page after running action. For example, use this setting when creating a builder.
Break Containment Enable this check box if you want to replace the contents of the target window with the contents of the URL returned by the action.
Overwrite Rule If the element(s) on which this HTML event action operates already has the specified attribute set, select one of the following:

  • Don't overwrite HTML value -- Does not set/change attribute value.

  • Append new value -- Appends the specified value to existing attribute value. Typically used for building JavaScript expressions. For example, border="oldJavaScriptExpression";"newJavaScriptExpression"

  • Prepend new value -- Prepends the specified value to existing attribute value. Typically used for building JavaScript expressions. For example, onClick="newJavaScriptExpression";"oldJavaScriptExpression"

  • Overwrite HTML value -- Replaces existing attribute value with the specified attribute value.