518
Chapter 3: ColdFusion Functions
Note:
If you use pound signs (#) in string_expression1 or string_expression2, ColdFusion evaluates
the part of the expression in pound signs first. If you misuse the pound signs, you can cause
unexpected results from the
IIf
function. For example, if you use pound signs around the whole
expression in string_expression1, and if there is an undefined variable in string_expression1, the
function might fail, with the error 'Error Resolving Parameter,'
If a variable is undefined, ColdFusion throws an error when it processes this function. The
following example shows this problem:
#IIf(IsDefined("Form.Deliver"), DE(Form.Deliver), DE("no"))#
This returns "Error resolving parameter FORM.DELIVER".
To avoid this problem, use the
DE
and
Evaluate
functions in code such as the following:
#IIf(IsDefined("Form.Deliver"), Evaluate(DE("Form.Deliver")), DE("no"))#
This returns "no"; ColdFusion does not throw an error.
In the following example,
LocalVar
is undefined; however, if you omit pound signs around
LocalVar
, the code works properly:
<cfoutput>
#IIf(IsDefined("LocalVar"), "LocalVar",
DE("The variable is not defined."))#
</cfoutput>
The output is:
The variable is not defined.
The pound signs around
LocalVar
in the following code cause it to fail with the error message
'Error Resolving Parameter', because ColdFusion never evaluates the original condition
IsDefined("LocalVar")
.
Here is another example:
<cfoutput>
#IIf(IsDefined("LocalVar"), DE("#LocalVar#"), DE("The variable is not
defined."))#
</cfoutput>
The error message would be as follows:
Error resolving parameter LOCALVAR
The
DE
function has no effect on the evaluation of
LocalVar
, because the pound signs cause it to
be evaluated immediately.
Example
<h3>IIf Function Example</h3>
<p>IIf evaluates a condition, and does an Evaluate on string
expression 1 or string expression 2 depending on the Boolean
outcome <I>(True: run expression 1; False: run expression 2)</I>.</p>
<p>The result of the expression
IIf( Hour(Now())
GTE 12,
DE("It is afternoon or evening"),
DE("It is morning"))
is:<br><b>
<cfoutput>
#
IIf( Hour(Now())
GTE 12,
DE("It is afternoon or evening"),
DE("It is morning"))#
Содержание COLDFUSION MX 61-CFML
Страница 1: ...CFML Reference...
Страница 16: ...16 Contents...
Страница 32: ...32 Chapter 1 Reserved Words and Variables...
Страница 123: ...cffile 123 cffile action rename source c files memo keymemo doc destination c files memo oldmemo doc...
Страница 144: ...144 Chapter 2 ColdFusion Tags action close stopOnError Yes p Did it succeed cfoutput cfftp succeeded cfoutput...
Страница 160: ...160 Chapter 2 ColdFusion Tags html...
Страница 186: ...186 Chapter 2 ColdFusion Tags br CGI variable CGI cgi_test br br Note that the CGI variable is URL encoded cfoutput...
Страница 214: ...214 Chapter 2 ColdFusion Tags name sourcedata value Hello world friend cfinvoke cfoutput varName cfoutput...
Страница 245: ...cfmail 245 p input type Submit name form...
Страница 258: ...258 Chapter 2 ColdFusion Tags Example cfobject type corba context ior class c myobject ior name GetName...
Страница 299: ...cfreturn 299 cffunction cfcomponent...
Страница 354: ...354 Chapter 2 ColdFusion Tags cfoutput cfcatch cftry...
Страница 357: ...cfupdate 357 cftable cfif body html...
Страница 362: ...362 Chapter 2 ColdFusion Tags cfloop MyDoc cfxml cfdump var MyDoc...
Страница 397: ...ASin 397 br input type Text name sinNum size 25 p input type Submit name input type RESET form...
Страница 416: ...416 Chapter 3 ColdFusion Functions P INPUT TYPE Submit VALUE Compare these Strings NAME INPUT TYPE RESET FORM...
Страница 418: ...418 Chapter 3 ColdFusion Functions br br input type Submit name nbsp nbsp input type RESET form...
Страница 486: ...486 Chapter 3 ColdFusion Functions input type Submit NAME form...
Страница 492: ...492 Chapter 3 ColdFusion Functions b http_content x content b cfoutput...
Страница 504: ...504 Chapter 3 ColdFusion Functions tr table form...
Страница 519: ...IIf 519 cfoutput b...
Страница 530: ...530 Chapter 3 ColdFusion Functions IsCustomFunction myTestCFCobject testFunc myTestCFCobject testFunc is a function CFIF...
Страница 534: ...534 Chapter 3 ColdFusion Functions input type Submit name form...
Страница 542: ...542 Chapter 3 ColdFusion Functions cfif cfif...
Страница 547: ...IsStruct 547 cfcase cfswitch...
Страница 550: ...550 Chapter 3 ColdFusion Functions IsWDDX returns IsWDDX packet br cfoutput...
Страница 559: ...Left 559 option value 9 9 select input type Submit name Remove characters form...
Страница 565: ...ListContains 565 cfoutput The string two is in b element ListFind aList two b of the list cfoutput...
Страница 608: ...608 Chapter 3 ColdFusion Functions check the current locale for server cfset serverLocale GetLocale...
Страница 620: ...620 Chapter 3 ColdFusion Functions cfoutput cfloop...
Страница 662: ...662 Chapter 3 ColdFusion Functions replacelist stringtoreplace dog brown fox black cow black ferret white cfoutput...
Страница 681: ...SetVariable 681 p Your variable varName p The value of varName is varNameValue cfoutput cfif...
Страница 684: ...684 Chapter 3 ColdFusion Functions br br input type Submit name nbsp nbsp input type RESET form...
Страница 724: ...724 Chapter 3 ColdFusion Functions cfelse h3 Conversion error h3 cfif...
Страница 743: ...XmlNew 743 cfscript cfdump var MyDoc...
Страница 786: ...786 Chapter 5 ColdFusion Java CFX Reference...
Страница 798: ...798 Chapter 6 WDDX JavaScript Objects...
Страница 806: ...806 Chapter 7 ColdFusion ActionScript Functions...