2020.1

Table Of Contents
used. This is prevented by giving clones unique names. Unique names also ensure that
CSSrules and scripts can target a specific clone.
Targeting elements in a cloned section
Clones that have a unique name can be further personalized with the use of CSS style sheets
(see "Styling and formatting" on page718) and personalization scripts (see "Variable Data" on
page777 and "Writing your own scripts" on page843).
The selector to use is: [section="name of the clone"].
The following CSS style rules target the <h1> element in a number of clones and assign the
respective text a different color:
[section="my_section_clone_0"] h1 { color: red; }
[section="my_section_clone_1"] h1 { color: green; }
[section="my_section_clone_2"] h1 { color: blue; }
The same selector could be used in personalization scripts:
Selector: [section="my_section_clone_0"] h1
Script: results.css('color','red');
Inside a Standard Script, cloned sections can be found using merge.section:
if (merge.section == "my_section_clone_0") {
results.html("Clone!");
} else {
results.html("Original.");
}
Note that in a Control Script, merge.section is only defined when the output channel is WEB;
see "merge" on page1410.
Examples
Cloning a section based on the number of records in a detail table
This script creates as many clones of a section as there are records in a detail table. It assigns
the new sections a unique name.
var printSections = merge.template.contexts.PRINT.sections;
var numClones = record.tables['detail'].length;
Page 891