先ほどとの関連になりますが、
<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>
また、見当はずれなこと言っていたらすみません。

このQ&Aに関連する最新のQ&A

A 回答 (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から私が作る事と同じになりますので、とりあえず間違っている部分の指摘だけにさせていただきます。
キツイ言い方かもしれませんが、基本を全く押さえずにいくら書いてみても、時間の無駄ですよ。
上記の指摘は、まったくの基本箇所ばかりです。
本などがないのであれば、該当のサイトを検索してすみずみまで一度読んで、最低限ソースの書き方だけでもマスターしてから始める事をお薦めします。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す

このQ&Aと関連する良く見られている質問

Q<ファイル3>を開いた時に、<ファイル2><ファイル1>から自動的に書き込ませたい

ファイルメーカーPro6 for Winを、1カ月前に
始めた初心者です。
OS:WindowsXP

例えば、
<ファイル1>
会社No 会社名  住所   電 話 
-----------------------------
 1    AAA   ●●●  ○○○ 
 2    BBB  ▲▲▲  △△△ 

<ファイル2>
車輌No 会社名 会社No  車種
-------------------------------
01-11  AAA    1    普通車
11-23  AAA    1     軽自動車
78-56  BBB    2     普通自車

<ファイル3>
車輌No 会社No 会社名   住所    電 話   車種
-----------------------------------------------
01-11   1     AAA    ●●●   ○○○   普通車
11-23   1     AAA    ●●●   ○○○   軽自動車
78-56   2     BBB    ▲▲▲   △△△    普通車

リレーションで<ファイル3>と<ファイル1>をキー「会社No」で結び、
<ファイル3>と<ファイル2>をキー「会社No」で結ぶ。
<ファイル3>を開いた時に、<ファイル2>の車輌Noを基に、
車輌No順に上記の<ファイル3>のように
自動的に<ファイル2>と<ファイル1>から<ファイル3>に
書き込ます(コピー)ようにするには
どうすれば、よろしいでしょうか。
教えて下さい。

ファイルメーカーPro6 for Winを、1カ月前に
始めた初心者です。
OS:WindowsXP

例えば、
<ファイル1>
会社No 会社名  住所   電 話 
-----------------------------
 1    AAA   ●●●  ○○○ 
 2    BBB  ▲▲▲  △△△ 

<ファイル2>
車輌No 会社名 会社No  車種
-------------------------------
01-11  AAA    1    普通車
11-23  AAA    1     軽自動車
78-56  BBB    2     普通自車

<ファイル3>
...続きを読む

Aベストアンサー

レイアウトモードでメニューから「新規レイアウト」を選べば新しいレイアウトを作成できます。

現在のレイアウトに少し手を加えるのであれば
ファイル3のフィールドと同じフィールドをファイル2に
フィールド定義してからレイアウト→レイアウトの複製
で作ると簡単です。
このあたりはマニュアルにも載っていますので熟読を
おすすめします。
ファイルメーカーのマニュアルとヘルプはかなりよく
出来ていますよ。

QINSERT INTO table(DATE) VALUES('20090101')ができません。

初めましてご教授よろしくお願いします。

Accessにレコードを追加しようとしているのですがうまくいきません。

どうもDATEというフィールドにテキスト型の'20090101'を入れようとするのがいけないみたいです。

予約語だからDATEのフィールド名を変えた方がいいことはわかっているのですが、お客様がテーブルを作成しているので変更することができません。

お客様いわくテキスト型で入るというのですがどうすれば入るのでしょうか?

ちなみにDATEフィールドはテキスト型です。

エラー内容は「INSERT INTO ステートメントの構文エラーです。」と表示されます。

Aベストアンサー

INSERT INTO table(DATE) VALUES('20090101')

INSERT INTO table([DATE]) VALUES('20090101')
にしてみてください。

QIf 参加賞 = 1 Then '←

Access2003 Windows-xpを使っています。
フォーム上に、複数のテキストボックスがあり、そこにコードを書いてあるのですが、、、
現在、「参加賞」のテキストボックスに「1」を入力したとき(If 参加賞 = 1 Then)
というようになっていますが、ここを"「0以外の数値」を入力した時"というコードにしたいのですが、どのように書いたらよいのでしょうか?
すみませんが、どなたか教えてください。
宜しくお願い致します。
-----------------------------------------
Private Sub 参加賞_AfterUpdate()

If 参加賞 = 1 Then

'他を0にする
i参加賞 = 0
F賞 = 0
E賞 = 0
D賞 = 0
i提案賞 = 0
i努力賞 = 0
idea賞 = 0

End If
End Sub
---------------------------

Aベストアンサー

0以外なら
If 参加賞 <>1

0より大きい数値なら
If 参加賞 >0

で、いかがですか?

QAccessVBA 実行時エラー'2766'について質問です。

AccessVBA 実行時エラー'2766'について質問です。

このオブジェクトには、オートメーションオブジェクト'レコードセット'は含まれません。

のエラーが出て困っています。
発生タイミングはフォームで4箇所以上の条件で検索した際に発生してます。
SQLに問題がありそうなのですが、SELECT~FROM文に続けて
WhereSQL = "WHERE List.DeleteCheck <> True "
WhereSQL = WhereSQL & "AND MCate = '" & ![txtFindMachineCate].Column(1) & "' "
WhereSQL = WhereSQL & "AND PName LIKE '%" & ![txtFindProductName] & "%'"
などテキストボックスに入力されているかをIF文でチェックして、
WHERE文をANDで結合しています。(AND文合計30個)
ただし、4個ほどテキストボックスやコンボボックスを選択して検索すると、エラーがでます。

上記の後に、ORDER BY句を結合しています。
SubFormSQL = SubFormSQL & "ORDER BY PNum;"

エラーのタイミングは上記の通りで、どのテキストボックスで起こるかは決まっていません。

何が原因しているのか、さっぱりで大変困っています。
アドバイスよろしくお願いいたします。m(_ _)m

AccessVBA 実行時エラー'2766'について質問です。

このオブジェクトには、オートメーションオブジェクト'レコードセット'は含まれません。

のエラーが出て困っています。
発生タイミングはフォームで4箇所以上の条件で検索した際に発生してます。
SQLに問題がありそうなのですが、SELECT~FROM文に続けて
WhereSQL = "WHERE List.DeleteCheck <> True "
WhereSQL = WhereSQL & "AND MCate = '" & ![txtFindMachineCate].Column(1) & "' "
WhereSQL = WhereSQL & "AND PName LIKE '%" & ![txtFindProductName] & ...続きを読む

Aベストアンサー

連結し生成しているので、空白区切りが要るのにない、シングルコーテーションが片方しかない、こういう観点でSQLが正しいかから探るというのはやりましたか。

QAccess 実行時エラー'3075' 対処方法

VBAの設定されているAccessファイルを作成したのですが、実行時エラー'3075' クエリ式 「'Mid([W_作業用]![※関税CD],2,2'のこの関数は式では使用できません」というエラーが発生しました。

ただ、このエラーについては、発生するPCと発生しないPCと二分しています。
エラーが発生するPCについては、発生しないようにするにはどうすればよいのでしょうか?
PCの環境を変更する必要があるのか、あるいは、システムそのものを改修する必要がある(Mid関数を修正する必要がある?)のでしょうか?周りに相談できる人がおらずに困っています。。

ps)ツール→参照設定で参照可能なライブラリファイルは確認した所、設定内容に問題はありませんでした。何が問題でこうしたエラーが発生しているのでしょうか・・

Aベストアンサー

その関数をどこで使ってますか?
クエリのフィールドでは無理ですよ?
更新クエリの値ならいいですけど。
画像あります?


人気Q&Aランキング

おすすめ情報