我有一个传递变量的表单,其中有很多隐藏的输入,然后是提交。这是一些代码:
<input type = "hidden" name = "templname" value = '#templname#'>
<input type = "hidden" name = "attloc" value = '#extattloc#'>
<input type = "hidden" name = "cctype" value = 'f'>
<input type = "hidden" name = "merls" value = '#merls#'>
<input type = "hidden" name = "invnum" value = '#invnum#'>
<cfif ArrayIsDefined(selvalarr,1)>
<cfloop array = "#selvalarr#" index = "att">
<input type = "hidden" name = "att" value ="#att#">
</cfloop>
</cfif>
<cfloop array = "#letarr#" index = "let">
<input type = "hidden" name = "let" value = '#let#'>
</cfloop>
<input type = "submit"
class = 'repbutton onoffbut'
style = 'height:75px;'
id = "runemail"
value = "run email" >
</form>
</td>
一切都是你所期望的 - 除了关于letarr的循环。变量#ly#被转储到页面上,尽管输入显然是隐藏的。这是变量“let”的样子(2个值)。此输出来自以下代码:
<cfloop array = "#letarr#" index = "let">
<br>#let#
</cfloop>
这是隐藏的输入给我的东西:
除了“运行电子邮件”按钮之外,什么都不应该。
我已完成数组“letarr”的直接输出,这是正确的(见上文)。我已经检查过在<td
标签内有它不是问题。我认为这是变量,也许是多行。
有没有人知道是什么原因引起的?或者如何修复它?
做几个步骤。
<cfdump var="#letarr#">
以确保没有意外的值。<cfloop array = "#letarr#" index = "let">
<input type = "hidden" name = "let" value = '#EncodeForHTMLAttribute(let)#'>
</cfloop>
总是尝试使用encodeForHTML()
来避免这些问题。