Forms 未识别Lucee表单范围
下面的问题是一个难题,我还没有解决,但找到了解决的方法。最后,我将xref2.cfm拆开,一行一行地重新组装起来。我一这么做,表单范围就开始工作了。代码中没有任何更改。所以这仍然是个谜 我有一套4个程序,它们是这样连接在一起的: person1.cfm:这源于来自另一个程序的调用和url参数basetab=Person。我在这里集中讨论变量“fn”Forms 未识别Lucee表单范围,forms,lucee,Forms,Lucee,下面的问题是一个难题,我还没有解决,但找到了解决的方法。最后,我将xref2.cfm拆开,一行一行地重新组装起来。我一这么做,表单范围就开始工作了。代码中没有任何更改。所以这仍然是个谜 我有一套4个程序,它们是这样连接在一起的: person1.cfm:这源于来自另一个程序的调用和url参数basetab=Person。我在这里集中讨论变量“fn” 然而,person1.cfm也可以通过cfinclude进一步访问,在这种情况下,我依赖表单作用域将fn传递回person1.cfm &l
然而,person1.cfm也可以通过cfinclude进一步访问,在这种情况下,我依赖表单作用域将fn传递回person1.cfm
<cfelseif IsDefined('form.fn')>
<cfset fn = form.fn>
<cfset ln = form.ln>
<cfset basetab = form.basetab>
<cfset perloc = form.perloc>
<cfset eof = form.eof>
</cfif>
但是,如果此处既没有定义URL范围,也没有定义表单范围,那么应该在包含person1.cfm的程序中设置变量fn,因此此时应该很好地定义它
... stuff ...
<form action = "person2.cfm" method = "post" ... other stuff>
<input type = "text" name = "fn" value = "#fn#">
.... more stuff....
... submit ...
</form>
。。。东西
.... 更多的东西。。。。
... 提交
person2.cfm:这是流程的下一步
... stuff ...
<cfset fn = form.fn>
<cfinclude template = "person1.cfm">
<form action = "xref1.cfm" method = "post" ... stuff >
<cfoutput>
<input type = "hidden" name = "fn" value = "#fn#">
</cfoutput>
.... stuff ....
.....submit ....
</form>
。。。东西
.... 东西
提交
xref1.cfm这是下一步
... stuff ...
<cfset fn = form.fn>
<cfinclude template = "person2.cfm">
<form action = "xref2.cfm" method = "post" ... stuff >
<cfoutput>
<input type = "hidden" name = "fn" value = "#fn#">
</cfoutput>
.... stuff ....
.....submit ....
</form>
。。。东西
.... 东西
提交
xref2.cfm最后一步,对累积的条目进行处理
.... stuff ...
<cfset fn = form.fn>
<cfinclude template = "xref1.cfm">
... no form ... other stuff ...
。。。。东西
... 没有表格。。。其他东西。。。
问题在于,在xref2.cfm中,变量fn未在表单范围内拾取。检查一下,我发现form.fn在xref2.cfm中根本没有定义。当事情级联回Person1时,fn没有定义,并在输入标记中抛出一个错误
form.fn在person2.cfm和xref1.cfm中定义。但当我们看到xref2.cfm时,它就消失了。我不明白为什么。有人能给我解释一下为什么xref2.cfm中没有该表单作用域吗 我认为这是一个输入错误或什么的。我认为这是一个输入错误或什么的。“我一这么做,表单范围就开始工作了”。那么:你是说它正在工作吗?是的,它正在工作。这是令人困惑的,因为什么都没有改变。我唯一的想法是,可能在程序文件的某个地方有一个非打印字符。“我一这么做,表单作用域就开始工作了”。那么:你是说它正在工作吗?是的,它正在工作。这是令人困惑的,因为什么都没有改变。我唯一的想法是程序文件中可能有一个非打印字符。
.... stuff ...
<cfset fn = form.fn>
<cfinclude template = "xref1.cfm">
... no form ... other stuff ...