检查动态字段是否存在:在类coldfusion.filter.FormScope类型的Java对象中未定义Element [x]

时间:2017-03-15 18:01:34

标签: coldfusion

我正在尝试检查动态表单字段的值是否为空,但是每个点都会出现错误。我想要做的是:如果表单值为空,则不执行任何操作并跳过它。如果它不是空的,请继续填写其他详细信息。

这是我的代码:

<cfset filename = "form.oldFile_" & #k# & "_" & #ii#>
<cfset fname = isDefined(form["form.oldFile_#k#_#ii#"])>
<cfdump var="#fname#" abort>

运行上面的代码时出现此错误:

  

元素form.oldFile_1_1在类型为class的Java对象中未定义   coldfusion.filter.FormScope。

我也尝试了evaluate,但也遇到了类似错误。

<cfset fname = isDefined('form["form.oldFile_#k#_#ii#"]')>

1 个答案:

答案 0 :(得分:2)

尝试使用structKeyExists

<cfif structKeyExists(form, "oldFile_#k#_#ii#")>
    <cfset fname = form["oldFile_#k#_#ii#"]>
</cfif>

<cfif structKeyExists(form, "oldFile_#k#_#ii#")>
    <cfset fname = form["oldFile_" & k & "_" & ii]>
</cfif>