getBaseTagList

Description

Gets ancestor tag names, starting with the parent tag.

Categories

Related

Syntax

GetBaseTagList()

Returns

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.

Usage

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

Example

<!--- 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>