Skip to main content


         This documentation site is for previous versions. Visit our new documentation site for current releases.      
 

Custom JavaScript in application design

Updated on December 13, 2022
Applicable to Theme Cosmos applications

You can add custom JavaScript to supplement the standard Pega Platform JavaScript code to meet specific design or usage requirements for your application. For example, you can use custom scripts to modify the content of an HTML document dynamically, add custom client-side validation scripts, error messages, and more.

Caution: Pega does not provide support services and troubleshooting for custom JavaScript code, such as scripts that override the default application behavior.

You can add custom JavaScript to UI components in the following ways:

As a JavaScript text file inside a harness rule
Harnesses are auto-generated, so you cannot edit the harness HTML manually. If you want to include your custom scripts inside a particular harness, you can add custom JavaScript saved as a text file to a harness rule by referencing the file in the Scripts and styles tab of the harness.

For more information, see Adding scripts and style sheets to a harness.

As inline JavaScript inside the UserWorkForm HTML fragment rule
If you want to include your custom scripts inside every harness of the application, you can add a JavaScript function directly to the UserWorkForm HTML fragment rule, which accepts customized script and loads it during every loading of the harness.
Note: The UserWorkForm HTML fragment rule is part of the WorkFormStandard HTML fragment rule, which generates default HTML for every user form.

For more information, see Changing global harness behavior with JavaScript.

As JS script tags, JS files, or HTML fragment rules inside an HTML of a custom section or control
If you want to load custom JavaScript in a custom section or control, you can add your scripts to the HTML source of the section or control. You can include inline JS script tags, JS files, and HTML fragment rules to modify the default code.

For more information, see Customizing sections and controls with JavaScript.

You can call custom JavaScript functions in the following ways:

When an HTML rule is loaded
The function runs when a document is loaded on a web page.
From an event in a control
The function runs every time a specific event occurs. You can configure the event with a Run script action in a control. For example, scripts can be triggered by events such as loading, element focus, or mouse movement. For more information, see Adding action sets to a control.
  • Changing global harness behavior with JavaScript

    Customize all harnesses in your application by modifying the default JavaScript code.

  • Customizing sections and controls with JavaScript

    You can extend the functionalities of your application by adding custom JavaScript to the source code of a non-autogenerated section or a custom control. For example, you can add JavaScript to a section to launch a client-side validation of a specific field when the section is rendered.

  • JavaServer Pages tags

    JavaServer Pages tags help you build hand-crafted, non-auto-generated rules for UI components.

  • Best practices for using custom JavaScript

    By following best practices for using custom JavaScript, you ensure that you can fully benefit from such functionalities as custom error messages or client-side validation.

  • Creating binary file rules

    Enhance and customize your application by creating a binary file rule that stores a graphics file, such as an image, or other non-text file. The binary file rule type provides the security, inheritance versioning, and deployment benefits of rule resolution to a file.

  • Previous topic Modified parameters in the mashup code prevent access to the mashup channel
  • Next topic Changing global harness behavior with JavaScript

Have a question? Get answers now.

Visit the Support Center to ask questions, engage in discussions, share ideas, and help others.

Did you find this content helpful?

Want to help us improve this content?

We'd prefer it if you saw us at our best.

Pega.com is not optimized for Internet Explorer. For the optimal experience, please use:

Close Deprecation Notice
Contact us