• ベストアンサー

JavaScript超初心者です。

JavaScript超初心者です。 フォームを作成してます。 ★JavaScriptの記載方法の質問 下記の内容をJavaScriptで記載することは可能でしょうか? 1.チェックボックスにチェックがされていたら、そのまま確認画面へ。 2-a、 チェックボックスにチェックがされていなかったら、     confirmで「はい」か「いいえ」を出し、「はい」の場合は、そのまま確認画面へ。 2-b、 「いいえ」の場合は、画面はそのままで、confirm画面が消える。 もし、お時間がある方がおりましたら、教えてください。 よろしくお願いいたしますm--m;

質問者が選んだベストアンサー

  • ベストアンサー
  • akito0417
  • ベストアンサー率20% (55/266)
回答No.3

チェックが入ってる時もy.phpに遷移するなら、間違えました。(formにactionを指定しない方法) function go() {   var nextUrl = "y.php";   var flg;   if (!document.form1.display.checked) {     if (!confirm("チェックないけど、いいですか?")) {       return;     } else {       flg = true;     }   }   if (flg) {     document.form1.action = nextUrl;     document.form1.method = "post";     document.form1.target = "表示したいフレーム名";     document.form1.submit();   } } です。

その他の回答 (2)

  • akito0417
  • ベストアンサー率20% (55/266)
回答No.2

function go() {   if (!document.form1.display.checked) {     if (!confirm("チェックないけど、いいですか?")) {       return;     }   } } これで多分いけます。 多分と言っているのは、formタグにactionを指定した事がない為。 以下いつも自分が組んでる形。 function go() {   var nextUrl = "y.php";   if (!document.form1.display.checked) {     if (!confirm("チェックないけど、いいですか?")) {       return;     } else {       document.form1.action = nextUrl;       document.form1.method = "post";       document.form1.target = "表示したいフレーム名";       document.form1.submit();     }   } } <form name="form1" method="post">   <input type="checkbox" name="display" value="1" />   <input type="button" onClick="go();" /> </form> targetに指定する項目が無いなら、記述する必要が無かったと思います。 動作確認しないで適当に打ったソースなので、間違ってるかもしれません。 ※注意 見やすくするためインデントつけてます。(全角スペースで) そのままコピーしても使えませんので置換等必要です

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

>confirm画面が消える。 というのが何を意味しているのわかりませんが、こんな感じで? <script> function checkFunc(f){ if (f.elements["hoge"].checked ) return true; return confirm("OK?"); } </script> <form action="y.php" onsubmit="return checkFunc(this)"> <input type="checkbox" name="hoge"> <input type="submit" value="go"> </form>

a-----n
質問者

補足

迅速なご回答ありがとうございます。 感謝します。 すみません!私の説明不足でした。 下記のようなソースを書いてます。 このチェックボックスをチェックしていれば、スルー。 チェックが入っていなければ、 チェックないけど、いいですか? 「はい」「いいえ」のダイヤログが出てきて、 「はい」→ y.phpに進む 「いいえ」→ダイヤログが閉じる。(画面はそのまま) というようなことはできますでしょうか? また、説明不足だったらすみません。 わかりましたら教えていただけると助かります。 よろしくお願いいたします。 <form method="POST" action="y.php" id="form" name="form1" onSubmit="return check()"> <tr> <th align="right">チェックする</th> <td valign="top"> <input type="checkbox" name="display" value="1" /> </td> </tr> <input type="submit" value="go"> </form>

関連するQ&A