这是我在第一页上的代码
<body onload=setTimeout("location.href='http://64.124.162.184/TrenaTest/testformtwo.htm'?UniqueNum=#form.UniqueNum#",3000) bgcolor="#FFFFFF">
然后,当我进入下一页时,我有
<cfif isdefined("form.UniqueNum") and len(form.UniqueNum)>
#form.UniqueNum#
</cfif>
我不会给我任何错误NULL
。
答案 0 :(得分:5)
请改用url.uniqueNum。由于您在url param中传递它,因此它不在url范围内的表单范围内。
和Scott说的一样,您需要将变量嵌套在cfoutput标记中以供显示。为了帮助您排除故障,您可以转储范围以查看它们是什么:
<cfdump var="#variables#">
<cfdump var="#form#">
<cfdump var="#url#">
<cfdump var="#session#">
<cfdump var="#application#">
<cfdump var="#server#">
答案 1 :(得分:4)
你有一个JS语法错误,在错误的位置只有一个勾号。
<body onload=setTimeout("location.href='http://64.124.162.184/TrenaTest/testformtwo.htm'?UniqueNum=#form.UniqueNum#",3000) bgcolor="#FFFFFF">
.htm之后的那个单一滴答可能是你的罪魁祸首。将它移到最后 - 在#form.uniqueNum#之后,它看起来像这样:
<body onload=setTimeout("location.href='http://64.124.162.184/TrenaTest/testformtwo.htm?UniqueNum=#form.UniqueNum#'",3000) bgcolor="#FFFFFF"
&GT;
然后,正如Tim所说,您的变量将位于 URL 范围内 - 而不是表单范围(这是GET而不是POST)
答案 2 :(得分:2)
尝试在&lt; cfoutput&gt;中包装#form.uniqueNum#标签其他明智的只是发送字符串'#form.uniqueNum#'而不是form.uniqueNum的值。
可能希望确保该值存在,也可以使用&lt; cfparam&gt;。
另外,“下一页”是什么?我假设你的意思是当超时被“解雇”时会发生什么。该页面具有.htm文件扩展名,因此不太可能由ColdFusion处理。
答案 3 :(得分:0)
嘿,为什么你的页面是&#34; testformtwo。 htm &#34;。它应该是testformtwo。 cfm 我想。除非您已在服务器配置中将htm映射为cfm。