
こんにちは JavaScript初心者です。
過去ログを見ながらここまでやったのですが、何も表示されません。
?マークの所で引っかかっていると思うのですがどなたかご教授願います。
やりたい事は、チェックボックスのチェックの入った所の値を取り出して表示したいのですが...
3つチェックされていてOKをクリックした時に、ABC と出てくるのが理想です。
<html>
<SCRIPT LANGUAGE="JavaScript">
<!--
function chkform() {
for(i=1; i<=3; i++) {
chkdata(i) = document.form0.chk(i).Value ?
var aa = chkdata(i)
document.write(aa)
}
}
//--></SCRIPT>
<FORM onSubmit="return chkform(this)" name = "form0">
<INPUT type="checkbox" name="chk" value="A" >
<INPUT type="checkbox" name="chk" value="B" >
<INPUT type="checkbox" name="chk" value="C" >
<INPUT type="submit" value="OK" >
</form>
</html>
No.1ベストアンサー
- 回答日時:
これでは全然ダメです。
もう少し本なり見て勉強しましょう。
function chkform() {
var chkdata = new Array();
var aa = "";
var len = document.form0.chk.length;
for(i=0; i<len; i++) {
if ( document.form0.chk[i].checked ) {
chkdata[i] = document.form0.chk[i].value;
aa += chkdata[i];
}
}
document.write(aa);
}
やるなら、こんな感じで良いのでは?
#私的にはこんなのでも嫌ですが。。。
各行で何をやってるか理解した上でご使用ください。m(__)m
No.2
- 回答日時:
もう少し!ですよ。
無理に配列使わなくてもできるはず。ほとんどi_am_aliveさんの回答への着けたしになってしまいましたが、
下記ではいかがでしょう?
#インデントのため全角スペース入れてます。動作確認してません。
<script language="JavaScript">
<!--
function chkform() {
var aa = "";
var chkdata = "";
for(i = 0; i < 2; i++) {
chkdata = document.form0.chk[i].value;
aa = aa + chkdata:
}
document.write(aa);
}
//-->
</script>
<form name="form0">
<input type="checkbox" name="chk" value="A">
<input type="checkbox" name="chk" value="B">
<input type="checkbox" name="chk" value="C">
<input type="button" value="OK" onClick="javascript:chkform();">
</form>
1.式の終わりには「;」セミコロンを必ず記述します。
2.forの中に「var」を記述するとループの度に初期化されてしまいます。
#たぶんこれが一番の間違いでしょう。
3.配列(chk)の要素指定は [ ] で行います。
4.(サーバに)送信しない関数をコールする時は、
onSubmitよりもonClickを使用する方が楽(かな?)
この関係で <input type="submit"> ではなく <input type="button"> を
使用しました。
5.関数のコール元で「return 関数名();」と書いた時は必ず戻値を
返す必要があります。今回は「document.write」しているだけなので
「return」は要りません。
6.今回は使いませんでしたが配列を使用する場合は i_am_aliveさんが書かれた
ように「var hoge = new Arry();」と記述する必要があるでしょう。
7.配列の要素数は「0」からスタートします。1番目の chk の値を取得するには
「chk[0].value」となります。よって i の初期値は 0 です。
わお。いっぱい書いてしまいました。Webで情報を収集するのも良いのですが、
基礎知識はしっかり学習しましょう。基礎あっての応用ですから。(^-^)
頑張って下さい。
【新JavaScript入門】
http://member.nifty.ne.jp/aya/js2/js2_frm.htm
【一撃必殺JavaScript日本語リファレンス】
http://www.openspc2.org/JavaScript/
参考URL:http://member.nifty.ne.jp/aya/js2/js2_frm.htm
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- HTML・CSS ただいま勉強始めたての初心者です。フォームを縦並べにしたいです。 2 2022/11/20 17:18
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- JavaScript 1日1回引けるJavaScriptおみくじについて 1 2022/12/12 22:28
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
背景色を変えて未入力チェック...
-
チェックボックスのチェック方法
-
チェックボックスの値を引き渡...
-
複数あるチェックボックスから...
-
チェックボックスを選択すると...
-
【jsp/Java】チェックボックス...
-
チェックが入っていなかったら...
-
チェックボックスの使い方
-
オフになっているチェックボッ...
-
javascriptで確認ダイアログの...
-
チェックボックスの設定
-
フォーム内で記入したクエリ送...
-
return trueとreturn falseの用...
-
プルダウン 項目が多いので先頭...
-
ハイパーリンクを別ウインドウ...
-
onchangeイベントを強制的に発...
-
特定<table>内の<td>の色を変える
-
Javascriptでフォームのセレク...
-
value内に変数を入れたい
-
ラジオボタンでdisabledとchecked
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
チェックボックスのON/OFFでVal...
-
【jsp/Java】チェックボックス...
-
チェックボックスの設定
-
オフになっているチェックボッ...
-
スクリプト内でチェックボック...
-
背景色を変えて未入力チェック...
-
確認ページからフォームページ...
-
チェックが入っていなかったら...
-
JSP内で可変するチェックボック...
-
チェックボックスで指定したも...
-
チェックボックス可否条件記述...
-
checkboxをクリックしてリロー...
-
チェックボックスを使って条件検索
-
javascript checkbox
-
チェックボックスで選択したも...
-
チェックボックスに全てチェッ...
-
チェックボックスに連動するテ...
-
チェックボックスの値を変数に ...
-
一方のチェックボックスのON/OF...
-
チェックボックスの値を取り出...
おすすめ情報