Inserts a tree control in a form. Validates user selections. Used within a cftree
tag block. You can use a ColdFusion query to supply data to the tree.
<cftree name = "name" required = "Yes" or "No" delimiter = "delimiter" completePath = "Yes" or "No" appendKey = "Yes" or "No" highlightHref = "Yes" or "No" onValidate = "script_name" message = "text" onError = "text" lookAndFeel = "motif" or "windows" or "metal" font = "font" fontSize = "size" italic = "Yes" or "No" bold = "Yes" or "No" height = "integer" width = "integer" vSpace = "integer" hSpace = "integer" align = "alignment" border = "Yes" or "No" hScroll = "Yes" or "No" vScroll = "Yes" or "No" notSupported = "text"> </cftree>
cfapplet,
cfform,
cfgrid,
cfgridcolumn,
cfgridrow,
cfgridupdate,
cfinput,
cfselect,
cfslider,
cftextinput,
cftree,
cftreeitem
New in ColdFusion MX: ColdFusion renders a tree control regardless of whether there are any treeitems
within it.
This tag requires the client to download a Java applet. Downloading an applet takes time; therefore, using this tag might be slightly slower than using an HTML form element or the cfinput
tag to get the same information.
For this tag to work properly. the browser must be JavaScript-enabled.
If the following conditions are true, a user's selection from query data that populates this tag's options continues to display after the user submits the form:
cfform
preserveData
attribute is set to "Yes
"
cfform
action
attribute posts to the same page as the form itself (this is the default), or the action page has a form that contains controls with the same names as corresponding controls on the user entry formFor more information, see the cfform tag entry.
<!--- This example shows the use of cftree in a cfform. The query takes a list of
employees, and uses cftree and cfselect to display the results. cfgrid is
used to show an alternate means of displaying the same data --->
<!--- set a default for the employeeNames variable --->
<cfparam name = "employeeNames" default = "">
<!--- if an employee name has been passed from the form, set employeeNames
variable to this value --->
<cfif IsDefined("form.employeeNames")>
<cfset employeeNames = form.employeeNames>
</cfif>
<!--- query the datasource to find the employee information--->
<cfquery name = "GetEmployees" dataSource = "cfsnippets">
SELECT Emp_ID, FirstName, LastName, EMail, Phone, Department
FROM Employees where lastname
<cfif #employeeNames# is not ""> = '#employeeNames#'
</cfif>
</cfquery>
<html>
<body>
<h3>cftree Example</h3>
<!--- Use cfform when using other cfinput tools --->
<cfform action = "cftree.cfm">
<!--- Use cfselect to present the contents of the query by column --->
<h3>cfselect Presentation of Data</h3>
<h4>Click an employee's last name and "see information for this employee",
to see expanded information.</h4>
<cfselect name = "EmployeeNames" message = "Select an Employee Name"
size = "#getEmployees.recordcount#" query = "GetEmployees"
value = "LastName" required = "No">
<option value = "">Select All
</cfselect>
<input type = "Submit" name = ""
value = "see information for this employee">
<!--- showing the use of cftree --->
<!--- Use cftree for an expanded presentation of the data --->
<!--- Loop through the query to create each branch of the cftree --->
<h3>cftree Presentation of Data</h3>
<h4>Click on the folders to "drill down" and reveal information.</h4>
<p>cftreeitem is used to create the "branches" of the tree.
<p>
<cftree name = "SeeEmployees" height = "150" width = "240"
font = "Arial Narrow" bold = "No"
italic = "No" border = "Yes"
hScroll = "Yes" vScroll = "Yes"
required = "No" completePath = "No"
appendKey = "Yes" highlightHref = "Yes">
<cfloop query = "GetEmployees">
<cftreeitem value = "#Emp_ID#" parent = "SeeEmployees" expand = "No">
<cftreeitem value = "#LastName#" display = "Name"
parent = "#Emp_ID#" queryAsRoot = "No"
expand = "No">
<cftreeitem value = "#LastName#, #FirstName#"
parent = "#LastName#" expand = "No"
queryAsRoot = "No">
<cftreeitem value = "#Department#" display = "Department"
parent = "#Emp_ID#" queryAsRoot = "No"
expand = "No">
<cftreeitem value = "#Department#" parent = "#Department#"
expand = "No" queryAsRoot = "No">
<cftreeitem value = "#Phone#" display = "Phone"
parent = "#Emp_ID#" queryAsRoot = "No"
expand = "No">
<cftreeitem value = "#Phone#" parent = "#Phone#"
expand = "No" queryAsRoot = "No">
<cftreeitem value = "#Email#" display = "Email" parent = "#Emp_ID#"
queryAsRoot = "No" expand = "No">
<cftreeitem value = "#Email#" parent = "#Email#" expand = "No"
queryAsRoot = "No">
</cfloop>
</cftree>
...