A
A Short Acrobat JavaScript FAQ
1
Where can JavaScripts be found and how are they used?
JavaScripts work with Acrobat on a variety of levels: the
folder
level,
document
level, and
field
level, and
batch
level. These restrict the type of processing that can occur and are
loaded at different times.
How should I name my Acrobat form fields?
Acrobat form fields typically have names like
FirstName
,
LastName
, etc. This naming
convention is referred to as flat names. For many form applications, this flat hierarchy of
names is sufficient and works well. The problem with using flat names is that there is no
association between the fields.
Acrobat form field names can be more useful by creating a hierarchal structure. For
example, if we change
FirstName
to
Name
.
First
and
LastName
to
Name
.
Last
we
form a tree of fields. The period (‘.’) separator is used in Acrobat Forms and denotes a
hierarchy shift. The
Name
portion of these fields is the parent, and
First
and
Last
become the children. While there is no limit to the depth to which a hierarchical name can
be constructed, it is important that the hierarchy remain manageable.
This hierarchy can be useful in a number of ways. It can speed up authoring and ease
manipulation of groups of fields in JavaScript. In addition, a form field hierarchy can
improve the performance of form applications when there are many fields in the
document.
Using our original flat names
FirstName
,
MiddleName
and
LastName
, you can change
the background color of these fields to yellow (e.g. to indicate missing data or emphasize
an important point). In this case, two lines of JavaScript code would be needed for each
field:
var name = this.getField("FirstName");
name.fillColor = color.yellow;
name = this.getField("MiddleName");
name.fillColor = color.yellow;
name = this.getField("LastName");
name.fillColor = color.yellow;
1. Frequently Asked Questions
Acrobat JavaScript Scripting Guide
261