Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Forms Len函数是否只评估数值结果?_Forms_Coldfusion_Trim - Fatal编程技术网

Forms Len函数是否只评估数值结果?

Forms Len函数是否只评估数值结果?,forms,coldfusion,trim,Forms,Coldfusion,Trim,如果表单提交时带有空白字段,为什么下面的代码不输出“Error”?Len是否只计算数值 <cfif NOT Len(Trim("Form.myField"))> <cfoutput>Error</cfoutput> </cfif> 错误 以下内容也未按预期进行评估: <cfif Len(Trim("Form.myField")) IS 0> <cfoutput>Error</cfoutput> <

如果表单提交时带有空白字段,为什么下面的代码不输出“Error”?Len是否只计算数值

<cfif NOT Len(Trim("Form.myField"))>
 <cfoutput>Error</cfoutput>
</cfif>

错误
以下内容也未按预期进行评估:

<cfif Len(Trim("Form.myField")) IS 0>
 <cfoutput>Error</cfoutput>
</cfif>

错误
HTML:

<input type="text" name="myField" value="">


您确定要在trim函数中以引号形式传递参数吗?它可能会从字面上修剪字符串“Form.myField”

,因为它正在计算长度不是0的文本字符串“Form.myField”


试试看:

Duhhh。。。谢谢真不敢相信。我觉得我对细节的关注非常好。犯了一个多么愚蠢的错误!isDefined()稍有不同,在使用其他函数时需要引号,这让我很困惑。我终于习惯了(并且几乎不再使用isDefined()。你不会相信的,艾尔:就在我回到我的代码(我使用的是isDefined)并删除其中的引号之后,我的代码又停止工作了。我回到这里再次询问,看到了你的补充意见。现在情况很好。但是你怎么能停止使用isDefined呢?在我的例子中,我使用查看是否有未定义的内容,然后它的长度是否为0以输出错误;和cfelse来处理查询。您的替代方案是什么?正如Jason所建议的,我已经能够用structKeyExists()替换几乎所有的isDefined(“”)。我现在只在绝对必要的情况下使用isDefined(),因为它更精确。因为它更集中,所以速度可能更快,这取决于您的JVM。其他一些人的想法: