我需要验证X个字段。每个字段都命名为" testFieldX",其中X是大于1的任何实数。
基本上我在表单中的内容是名称为
的字段testField1
testField2
testField3
等
我需要迭代所有这些并验证。
假设我有5个字段。
然后
<cfloop index="i" from="1" to="5">
<cfif form.testField & i EQ "">
Show error
</cfif>
</cfloop>
然而它不起作用。我收到一个错误,即字段名称&#34; testField&#34;不存在,这是真的(只有testField1 +)存在。似乎事情并没有连接起来。它只适用于字符串吗?
我该如何解决这个问题?
答案 0 :(得分:6)
您所遵循的语法是:
<cfif form["testfield" & i] EQ "">
这将按照您的期望连接字符串。
答案 1 :(得分:2)
<cfif structKeyExists(form,"test1")>
<cfloop from="1" to="3" index="i">
<cfif form["test" & i] eq ''>
Error : <cfoutput>#i#</cfoutput><br />
</cfif>
</cfloop>
</cfif>
<form name="sub" method="post">
Test1: <input type="text" name="test1" id="test1" /><br />
Test2: <input type="text" name="test2" id="test2" /><br />
Test3: <input type="text" name="test3" id="test3" /><br />
<input type="submit" value="Submit" />
</form>