![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
JavaScriptを使ってフォームの質問1の3を答えたら質問2が入力可能なるようにしたです。
name="q2"の形にすると制御できますが、phpでの受け取りが、最後にチェックされた値しか表示されないためname="q2[]"にしたいです。
しかし、name="q2[]"にした時のJS側の記述がわかりません。
name="q2[]"にするとphpの配列でチェックされた値全部を取得できるので、name="q2[]"の形でJSの
修正をしたいのですが、どのように記述すれがいいのでしょうか?
なお、JSで難しい場合は、JSではなくPHPの修正でもかまいません。
結果、入力制御、入力チェックもでき、チェックボックスの値すべてがpostでphpに送れればいいです。
現状では下記のようにしています。
どうぞよろしくお願いいたします。
<form id="form1" name="form1" method="post" action="kakunin2.php" >
<label for="q1">質問1</label>
<p>今回のイベントはどうでしたか?</p>
<p>
<input type="radio" name="q1" value="よかった" onClick="changeDisabled()" />よかった
<input type="radio" name="q1" value="普通" onClick="changeDisabled()" />普通
<input type="radio" name="q1" value="おもしろくなかった" onClick="changeDisabled()" />おもしろくなかった
<br /><span id="q1_error" name="q1_error"></span>
</p>
<label for="q2">質問2</label>
<p>質問1で「おもしろくなかった」とお答えの方に質問です。<br />おもしろくなかった理由は何ですか?</p>
<p>
<input type="checkbox" name="q2[]" value="退屈だった" disabled="disabled" />退屈だった
<input type="checkbox" name="q2[]" value="時間が長かった" disabled="disabled" />時間が長かった
<input type="checkbox" name="q2[]" value="時間が短すぎた" disabled="disabled" />時間が短すぎた
<br /><span id="q2_error" name="q2_error"></span>
</p>
<input type="button" name="submit_01" id="submit_01" value="確認" onclick="check()"/>
</form>
----------以下JavaScript----------
var frm = document.form1;
var q1 = "";
var q2 = "";
var error_flag = "";
//質問1のチェック
for(i = 0; i < frm.q1.length; i++){
if(frm.q1[i].checked){
q1 = frm.q1[i].value;
}
}
if(q1 == "") {
document.getElementById("q1_error").innerHTML = "質問1におこたえください";
error_flag = "1";
}else{
document.getElementById("q1_error").innerHTML = "";
}
//質問2のチェック
if(q1 == "おもしろくなかった" ) {
for(j = 0; j < frm.q2.length; j++){
if(frm.q2[j].checked){
q2 = frm.q2[j].value;
}
}
if(q2 == "") {
document.getElementById("q2_error").innerHTML = "質問2におこたえください";
error_flag = "1";
}else{
document.getElementById("q2_error").innerHTML = "";
}
}else{
document.getElementById("q2_error").innerHTML = "";
}
if(error_flag !=""){
alert("入力が正しくありません!");
}else{
document.form1.submit();
}
}
//質問2のチェックボックスを使えるようにするかどうかを設定する
function changeDisabled(){
//フォームのオブジェクトを入れておく
var frm = document.form1;
//質問1で「おもしろくなかった」を選ばれている場合に質問を入力できるようにする
if(frm.q1[2].checked) {
//チェックが入っていた場合の処理
for(i = 0; i < frm.q2.length; i++){
frm.q2[i].disabled = false;
}
}else{
//チェックが入っていなかった場合の処理
for(i = 0; i < frm.q2.length; i++){
frm.q2[i].disabled = true;
}
document.getElementById("q2_error").innerHTML = "";
}
}
----------以下PHP(kakunin2.php)での受け取り----------
$q2 = $_POST["q2[]"];
for($i=0; $i<count($_POST["q2"]); $i++){
$q2[$i] = $_POST["q2"][$i] .",";
echo $q2[$i];
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- JavaScript javascriptで移動ボタンを押した際に遷移するボタンを追記したい 1 2022/11/29 03:02
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- HTML・CSS ただいま勉強始めたての初心者です。フォームを縦並べにしたいです。 2 2022/11/20 17:18
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
チェックボックスのON/OFFでVal...
-
チェックボックスに全てチェッ...
-
ラジオボタンとチェックボック...
-
チェックボックスの設定
-
JavaScriptからの戻り値
-
複数のラジオボタンの中から1...
-
複数あるチェックボックスから...
-
【jsp/Java】チェックボックス...
-
Objective-Cでチェックボックス...
-
追加ボタンを押した際に ok ボ...
-
onchangeイベントを強制的に発...
-
return trueとreturn falseの用...
-
プルダウン 項目が多いので先頭...
-
javaScriptの変数をJavaの変数...
-
tableの任意行にfocusをあてる
-
value内に変数を入れたい
-
特定<table>内の<td>の色を変える
-
hiddenのvalueの値を変えたい
-
VBscriptの配列変数をJavascrip...
-
onclickをEnterキーでも行いたい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【jsp/Java】チェックボックス...
-
チェックボックスのON/OFFでVal...
-
複数のチェックボックス項目が...
-
checkboxをクリックしてリロー...
-
背景色を変えて未入力チェック...
-
チェックボックスの設定
-
チェックボックスのON/OFFに応...
-
EclipseでSpringを使用し、テー...
-
JSP内で可変するチェックボック...
-
複数あるチェックボックスから...
-
オフになっているチェックボッ...
-
チェックボックスが複数ある場...
-
チェックボックスに全てチェッ...
-
確認ページからフォームページ...
-
特定のID(またはクラス)で括ら...
-
チェックボックス
-
ラジオボタンとチェックボック...
-
チェックボックスを使って条件検索
-
Javascript ポップアップウィ...
-
チェックボックスで指定したも...
おすすめ情報