Whatever message this page gives is out now! Go check it out!

cfexit

Last update:
May 18, 2026

Description

This tag aborts processing of the currently executing CFML custom tag, exits the page within the currently executing CFML custom tag, or re-executes a section of code within the currently executing CFML custom tag.

Category

Syntax

<cfexit 
 method = "method">
You can specify this tag's attributes in an attributeCollection attribute whose value is a structure. Specify the structure name in the attributeCollection attribute and use the tag's attribute names as structure keys.

See also

cfabortcfbreakcfexecutecfifcflocationcfloopcfswitchcfthrowcftrycfabort and cfexit in the Developing ColdFusion Applications

Attributes

Attribute
Req/Opt
Default
Description
method
Optional
exitTag
  • exitTag: aborts processing of currently executing tag.
  • exitTemplate: exits page of currently executing tag.
  • loop: re-executes body of currently executing tag.

Usage

If this tag is encountered outside the context of a custom tag, for example in the base page or an included page, it executes in the same way as cfabort. The cfexit tag can help simplify error checking and validation logic in custom tags. The cfexit tag function depends on its location and execution mode:
Method value
Location of cfexit call
Behavior
exitTag
Base page
Terminate processing
Execution mode = Start
Continue after end tag
Execution mode = End
Continue after end tag
exitTemplate
Base page
Terminate processing
Execution mode = Start
Continue from first child in body
Execution mode = End
Continue after end tag
loop
Base page
Error
Execution mode = Start
Error
Execution mode = End
Continue from first child in body

Example

 
<h3>cfexit Example</h3> 
<p>cfexit can be used to abort the processing of the currently executing CFML custom tag. Execution resumes following the invocation of the custom tag in the page that called the tag. 
<h3>Usage of cfexit</h3> 
<p>cfexit is used primarily to perform a conditional stop of processing inside a custom tag. cfexit returns control to the page that called that custom tag, or in the case of a tag called by another tag, to the calling tag.</p> 

<!--- cfexit can be used within a CFML custom tag, as follows: ---> 
<!--- Place this code (uncomment the appropriate sections) within the customtags directory. ---> 

<!--- MyCustomTag.cfm ---> 
<!--- This simple custom tag checks for the existence of myValue1 and myValue2. If they are both defined, the tag adds them and returns the result to the calling page in the variable "result". If either or both of the expected attribute variables is not present, an error message is generated, and cfexit returns control to the calling page. ---> 

<cfif NOT IsDefined("attributes.myValue2")> 
<cfset caller.result = "Value2 is not defined"> 
<cfexit method = "exitTag"> 
<cfelseif NOT IsDefined("attributes.myValue1")> 
<cfset caller.result = "Value1 is not defined"> 
<cfexit method = "exitTag"> 
<cfelse> 
<cfset value1 = attributes.myValue1> 
<cfset value2 = attributes.myValue2> 
<cfset caller.result = value1 + value2> 
</cfif>
<!--- End MyCustomTag.cfm ---> 

<!--- Place this code within your page ---> 

<!--- <p>The call to the custom tag, and then the result: </p> 
<CF_myCustomTag 
myvalue2 = 4> 
<cfoutput>#result#</cfoutput> ---> 
<p>If cfexit is used outside a custom tag, it functions like a cfabort. For example, the text after this message is not processed:</p> 
<cfexit> 
<p>This text is not executed because of the cfexit tag above it.</p>
Output
cfexit Example
cfexit can be used to abort the processing of the currently executing CFML custom tag. Execution resumes following the invocation of the custom tag in the page that called the tag.
Usage of cfexit
cfexit is used primarily to perform a conditional stop of processing inside a custom tag. cfexit returns control to the page that called that custom tag, or in the case of a tag called by another tag, to the calling tag.

Share this page

Was this page helpful?
We're glad. Tell us how this page helped.
We're sorry. Can you tell us what didn't work for you?
Thank you for your feedback. Your response will help improve this page.

On this page