-PR-
締切り
済み

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

  • 困ってます
  • 質問No.98518
  • 閲覧数84
  • ありがとう数1
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 46% (22/47)

先ほどとの関連になりますが、
<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>
また、見当はずれなこと言っていたらすみません。
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

回答 (全1件)

  • 回答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.va ...続きを読む
まず、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で解決しましたか?
関連するQ&A
-PR-
-PR-
このQ&Aにこう思った!同じようなことあった!感想や体験を書こう
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ