• 締切済み

CFLOOPで計算させたいのですが(2)

先ほどとの関連になりますが、 <SCRIPT LANGUAGE="JavaScript"> <!--JavaScript function TotalSum(i) { var evalStr = eval("document.sum" + i); with(evalStr) { if(!isNaN(text1.value) && !isNaN(text2.value) && !isNaN(text3.value) && text1.value && text2.value && twxt3.value); { text4.value = eval(text1.value) + eval(text2.value) - eval(twxt3.value); } if( !isNaN(text5.value) && !isNaN(text6.value) && text5.value && text6.value); { text7.value = eval(text4.value) + eval(text5.value) + eval(text6.value); } } } // --> </script> </head> <body> <TABLE BORDER="1"> <FORM name="myform" action="url" method="post" onSubmit="TotalSum(' + i + ');return false;"> <cfloop index="i" from="1" to="10"> <TR> <TD><input type="text" name="text1" onChange="TotalSum('+i+')" value="0"></TD> <TD><input type="text" name="text2" onChange="TotalSum('+i+')" value=""></TD> <TD><input type="text" name="text3" onChange="TotalSum('+i+')" value="0"></TD> <TD><input type="text" name="text4" onChange="TotalSum('+i+')" value="0"></TD> <TD><input type="text" name="text5" onChange="TotalSum('+i+')" value=""></TD> <TD><input type="text" name="text6" onChange="TotalSum('+i+')" value=""></TD> <TD><input type="text" name="text7" onChange="TotalSum('+i+')" value="0"></TD> </TR> </cfloop> </form> </TABLE> </body> また、見当はずれなこと言っていたらすみません。

みんなの回答

noname#1785
noname#1785
回答No.1

まず、JavaScriptから 1. var evalStr = eval("document.sum" + i);  documentの次はform属性です。  formの名前は、「sum+i」ですか? 2.if(!isNaN(text1.value) && !isNaN(text2.value) && !isNaN(text3.value) && text1.value && text2.value && twxt3.value);  構文がめちゃくちゃです。  JavaScriptの本なりサイトなりで、キチンとした構文を調べてください。  これではなにも判定できないどころか、エラーで落ちます。  当然、計算ロジックが走るわけがありません。 3.onSubmit="TotalSum(' + i + ');return false;">  この書き方も間違っています。  JavaScriptの基本です。  本で調べれば、最初に出てきますよ。  っていうか、FORMのSubmitに計算ロジック走らせてどうするんですか?  Submitボタンもないのに・・・。 そして、CF部分ですが、 1.<input type="text" name="text1" onChange="TotalSum('+i+')" value="0">  この書き方は、JavaScriptです。  'i'はCFの変数ですよね?  CFの変数の参照方法を調べてください。 この質問に答えると、0から私が作る事と同じになりますので、とりあえず間違っている部分の指摘だけにさせていただきます。 キツイ言い方かもしれませんが、基本を全く押さえずにいくら書いてみても、時間の無駄ですよ。 上記の指摘は、まったくの基本箇所ばかりです。 本などがないのであれば、該当のサイトを検索してすみずみまで一度読んで、最低限ソースの書き方だけでもマスターしてから始める事をお薦めします。

すると、全ての回答が全文表示されます。

関連するQ&A