Gets ancestor tag names, starting with the parent tag.
A comma-delimited list of uppercase ancestor tag names, as a string. The first list element is the current tag. If the current tag is nested, the next element is the parent tag. If the function is called for a top-level tag, it returns an empty string. If an ancestor does not expose data (see GetBaseTagData
), its name might not be returned.
GetBaseTagList
()
GetBaseTagData
; High-level data exchange in Creating and Using Custom CFML Tags in ColdFusion MX Developer's Guide
This function does not display the following tags or end tags in the ancestor tag list:
cfif
, cfelseif
, cfelse
cfswitch
, cfcase
, cfdefaultcase
cftry
, cfcatch
This function displays the following tags only under the following conditions:
cfloop
: if it uses a query
attribute
cfoutput
: if at least one of its children is a complex expression
cfprocessingdirective
: if it has at least one other attribute besides pageencoding
<!--- This example shows the use of GetBaseTagList function. Typically used in custom tags. ---> <cfif thisTag.executionMode is "start"> <!--- Get the tag context stack The list will look something like "CFIF,MYTAGNAME..." ---> <cfset ancestorList = GetBaseTagList()> <br><br>Dump of GetBaseTagList output:<br> <cfdump var="#ancestorList#"><br><br> <!--- Output current tag name ---> <cfoutput>This is custom tag #ListGetAt(ancestorList,1)#</cfoutput><br> <!--- Determine whether this is nested inside a loop ---> <cfset inLoop = ListFindNoCase(ancestorList, "cfloop")> <cfif inLoop> Running in the context of a cfloop tag.<br> </cfif> </cfif>