0

これは私が最初のページに持っているコードです

<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

4

4 に答える 4

5

代わりに url.uniqueNum を使用してください。url パラメーターで渡しているため、フォーム スコープではなく、url スコープにあります。

Scott が言うように、変数を表示するには、cfoutput タグで変数をネストする必要があります。トラブルシューティングを支援するために、スコープをダンプしてそれらが何であるかを確認できます。

<cfdump var="#variables#">
<cfdump var="#form#">
<cfdump var="#url#">
<cfdump var="#session#">
<cfdump var="#application#">
<cfdump var="#server#">
于 2012-07-09T15:36:12.757 に答える
4

間違った場所に1つのティックがある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">>

次に、Timが言ったように、変数はフォームスコープではなくURLスコープにあります(これはGETであり、POSTではありません)

于 2012-07-10T13:21:10.267 に答える
2

#form.uniqueNum# を <cfoutput> タグでラップしてみてください。そうしないと、form.uniqueNum の値ではなく、単に文字列 '#form.uniqueNum#' が送信されます。

値が事前に存在することを確認したい場合もあります。おそらく <cfparam> を使用してください。

また、「次のページ」とは何ですか?タイムアウトが「発生」したときに何が起こるかを意味していると思います。このページのファイル拡張子は .htm であるため、ColdFusion で処理される可能性は低くなります。

于 2012-07-09T16:47:45.900 に答える
0

なぜあなたのページは「testformtwo.htm」なのですかそれは testformtwo でなければなりません。cfmだと思います。サーバー構成でhtmをcfmとして処理するようにマップしていない限り。

于 2012-07-10T13:54:05.210 に答える