• 締切済み

Javascriptで formが未定義?

初心者なので稚拙な質問ですみません function count_chkA(form) { var totalA = 0; var max = form.chk_box_An.length; for (var index = 0; index < max; index++) { if (eval("document.area_chk.chk_box_An[" + index + "].checked") == true) { totalA += 1; } } alert("あなたのタイプは、 " + totalA + " です。"); と記述して <input type=button value="Aを判定する" onClick="count_chkA(form)"> で内容を表示さえたいのですが count_chkAが定義されていないと出てしまいます ついでですが chk.chk_box_Anの内容によって表示する二種類を選びたいですが、方法が判りませんので、これについても教えていただければ大変助かります

みんなの回答

回答No.3

>回答No.2 amanojaku1 ちゃんと配列が有るかチェックした方が良いと思います。 >var max = form.chk_box_An.length; ↑この次に行に下記の行を記述してみて下さい。 alert("max = "+max);

回答No.2

>count_chkAが定義されていないと出てしまいます 「function count_chkA」の最後の終わり波括弧が無いです。 function count_chkA(form) { var totalA = 0; alert("あなたのタイプは、 " + totalA + " です。"); var max = form.chk_box_An.length; for (var index = 0; index < max; index++) { if (eval("document.area_chk.chk_box_An[" + index + "].checked") == true) { totalA += 1; } } alert("あなたのタイプは、 " + totalA + " です。"); } // ←最後の終わり波括弧が無いです。

  • t_ohta
  • ベストアンサー率38% (5293/13829)
回答No.1

質問に書かれているプログラムだけを実行すると「count_chkAが定義されていない」にはなりません。 質問に書かれていない部分に問題あると思われます。

masarun53406
質問者

補足

IEの開発ツールでなぜ定義されていませんとなるのでしょう onClick="count_chkA(form)"のcount_chkAが赤くなるです ちなみにformを複数宣言して(form1, form2)いますが、これは間違いですか?

関連するQ&A