Passing Data
Just like HTML and CFML tags, custom
tags receive parameters via tag attributes. When you call a custom
tag, you can pass parameters that automatically become available as
variables within the custom tag. ColdFusion has a special variable
scope called the Attributes scope that refers to
reference attributes that have been passed to a custom tag. For
example, you can call a custom tag named CF_MYTAG
like this:
<CF_MYTAG NAME="Pere Money"
TITLE="President">Both NAME and TITLE are tag
attributes. Once the tag is called, these attributes and their
associated values are available within the custom tag as
Attributes.Name and
Attributes.Title, respectively. Because the custom
tag exists within its own scope, you must scope any variables with
the Attributes prefix in order to access them. Any
ColdFusion datatype may be passed to a custom tag as an attribute.
This allows you to create custom tags that can manipulate data from a
variety of sources including query objects, arrays, and structures as
well as such simple values as strings and numbers.
Let’s
look at a simple example that demonstrates how to pass a few
attributes to a custom tag. Example 19-1 calls a
custom tag called CF_DisplayEmployeeInfo (Example 19-2). A number of attributes are passed to the
tag: Name, Title,
Department, Email, and
PhoneExt.
Example 19-1. Passing Attributes to the CF_DisplayEmployeeInfo Custom Tag
<CF_DisplayEmployeeInfo Name="Pere Money" Title="President" Department="Executive Management" ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access