this
A Standard script or Post Pagination script that has its scope set to "Each matched element" (see Setting the scope of a script) will be called in a loop over the elements that match the selector of the script - the results (see results). In such a script, this is an object of the type QueryResult. It represents the current element in the loop.
Note: The scope of Control Scripts can't be set, because they don't have a selector.
Example
If the selector of a script is p.onlyCanada, and its scope is set to "Each matched element", the script will be repeated for all paragraphs that have the onlyCanada class; it can access only one paragraph at a time. The script could use this to manipulate each paragraph, e.g. hide or show it depending on the value of a data field Country in the current record:
if (record.fields["Country"] == "CANADA") {
this.show();
} else {
this.hide();
}
Note: In a script that has its scope set to "Each matched element", the results object is still accessible, and can be used in a non-iterative way (for example, you could use its length property to determine the total number of matched elements) but iterating over results will produce a warning.
Properties
| Field | Type | Description |
|---|---|---|
| id | Number | Index in the result set, or zero if this element is not part of a result set. |
| record |
Record |
Represents the current detail record in a (possibly nested) detail table associated with repeating rows in a Dynamic Table. This property is only available when |
| runningTotal | Number | Can be used to update a running total. It is initialized to zero when a loop over results starts. |
Functions
The functions below can be called by the results object and by any other result set that is returned by a query, see query().
| Function | Description |
|---|---|
| add() |
Adds elements to the current HTML element. |
| addClass() |
Adds the specified class to the current HTML element. Has no effect if the class is already present. |
| after() | Inserts content after the current HTML element. |
| append() |
Inserts content at the end of the current HTML element. |
|
Changes the given attribute of the current HTML element with the given value. |
|
| before() | Inserts content before the current HTML element. |
| children() | Returns the immediate children of the current HTML element. |
| clone() | Returns a copy of the current HTML element. |
|
This function gets the first parent element that matches a selector, by testing the element itself and traversing up through its ancestors in the DOM tree. |
|
| css() | Gets the value of a style property for the HTML element or sets one or more CSS properties for the HTML element. |
|
Removes the contents (child elements and inner HTML) from the current element. |
|
|
Performs a search for a text in the children of the current HTML element and returns a new result set with elements that surround the occurrences. |
|
| hasClass() | Returns true if the current HTML element has the
specified class. |
| height() | Gets or sets the outer height of an element, including padding and borders. |
|
Hides the HTML element. |
|
|
Replaces the inner HTML of the element with the supplied value, or returns the HTML of the current element if no value is supplied. |
|
| info() | Post Pagination Scripts only. Returns pagination information for the current HTML element. |
| is(selector) | Returns true if the current HTML element matches the supplied CSS selector. |
|
Returns the next sibling of the current HTML element. |
|
|
Returns a boolean value indicating whether the current HTML element overflows its box boundaries. |
|
| pageref() |
Returns a marker that will be replaced with the element's page number after pagination. This only works for elements in the section that is currently being merged. |
| parent() | Returns the parent of the HTML element. |
| prepend() | Inserts content at the beginning of an HTML element or of each element in a set of HTML elements. |
|
Returns the previous sibling of the current HTML element. |
|
| remove() | Removes an HTML element or a set of HTML elements from the document. |
| removeAttr() | Removes the specified attribute from the current HTML element. |
| removeClass() | Removes the specified class from the current HTML element. Has no effect if the class is not present. |
|
Replaces the current HTML element (with a snippet, for example). Returns the current element. |
|
| show() | Shows the HTML element in the template. |
| tagName() | Returns the HTML tag name of the element, in uppercase. For an example see: Creating a Table Of Contents. |
| text() | Replaces the text content of the HTML element with the supplied value, or returns the text content of the element if no value is supplied. |
| width() | Gets or sets the outer width of the HTML element, including padding and borders. |