• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:お問合せで最終コメントがエラーに)

お問合せで最終コメントがエラーに

noname#1785の回答

  • ベストアンサー
noname#1785
noname#1785
回答No.1

根本的に作り方を間違えているような・・・。(^^;; confirm以下はたぶん、true,falseの判定をさせようとしているのだと思いますが、omousikomi2とname2へのフォーカスはどのようになっているのでしょう? まずは、confirmの戻り値を変数に入れて、それを判定させれば良いかと思います。 <script language="javascript"> <!-- function omousikomi(){ var res=confirm ("入力したデータでよろしいですか?"); if(res == false){ document.formの名前.name2.focus(); return false; } } //--></script> フォームのエレメントは、きちんとdocumentから指定しないと、ブラウザによってはエラーを起こしますよ。 フォーム部分のソースが無いのでなんとも言えませんが、 <form action="飛び先URL"> <input type=~> </form> となっていれば、上記ソースでOKだったら飛び先URLへ、キャンセルだったらsubmitをやめて、name2へフォーカスをうつす、という動作になります。 omousikomi2へのフォーカスうつしが、キャンセル時になんらかの条件を伴って発生するのであれば、 if(res == false){  if(条件){ document.formの名前.omousikomi2.focus(); return false; }else{ document.formの名前.name2.focus(); return false; } } という形で切り分けてやれば良いと思います。 とりあえず、ご質問から推察できる範囲でお答えしましたが、何か他にありましたら補足要求してください。

aeic
質問者

お礼

わかりやすすぎるくらい教えて頂き本当にありがとうございます。 早速試した所直しました。(涙)

関連するQ&A

  • radioボタンでも、うまくアラート処理したいのですが・・・

    <SCRIPT LANGUAGE="JavaScript"> <!-- // ヌル及び空欄のチェックを行う function isFilled(elm) { if (elm.value == "" || elm.value == null) return false; else return true; } function isReady(form) { // 名前の空欄のチェックを行う if (isFilled(form.name) == false) { alert("お名前を入力して下さい。"); form.name.focus(); return false; } return true; } //--> </SCRIPT> フォームによるアンケートページを作成しているのですが、 textボックスで回答が書かれていなく、空欄の部分があったら アラートを出し、そのtextボックス部分に戻す、というような 上記プログラムの流れにしています。 textボックスではうまくいくのですが、radioボタンのとき、 うまくいきません(アラートは出るが、フォームに戻らない)。 回避策を教えてください。

  • お問い合わせフォームについて

    お問い合わせフォームをcciではなく、javascriptを使用して作成しているのですがうまくいきません!! submitボタンを押したときalertが出ない様にメールを送りたいのですが。。 ソースはこんなカンジです。 *このソースでは、ブラウザからのalertは表示されないのですがメールが送れません。 宜しくお願いします <SCRIPT LANGUAGE="JavaScript"> <!--- function mopen(){ if(document.frmInfo.name.value==""){ window.alert("お名前を入力してください"); return false; }      else{ return true; } var mmopen; mmopen=window.open("","formwin","menubar=yes,toolbar=yes,location=yes,directories=yes,resizable=yes,scrollbars=yes,width=400,height=500"); mmopen.focus(); mmopen.document.write("<html><head><title></title></head>"); mmopen.document.write("<body bgcolor='#ffffff'>"); mmopen.document.write("<center><br><B>お申し込みありがとうございました。<br><br>メールの内容は下記の通りです。</b><br><br><br></center>") mmopen.document.write("</body></html>"); mmopen.document.close(); return false; } //---> </SCRIPT> <FORM ACTION="mailto:***@//////.com" METHOD="POST" ENCTYPE="multipart/form-data" NAME="frmInfo" onSubmit="return mopen()"> mmopen.document.write("</body>"); mmopen.document.write("</html>"); mmopen.document.close(); return false; } //---> </SCRIPT>

  • チェックしなくても、確認のウインドウがでる

    チェックしなくても、確認のウインドウがでてしまうのですが、どこがいけないのでしょうか <SCRIPT language=JavaScript> function SubmitCheck() } if (document.Order.elements[kiyaku_fn].value == ""){ return false; } else if (document.Order.elements[kiyaku_fn].value == "同意"){ alert("規約に同意して下さい"); return false; } var confirm_str = ""; confirm_str = "下記の事項をご確認ください。\n" + "正しければ、OKを押してください。\n" + "--------------------------------\n" + "規約:" + document.Order.elements[kiyaku_fn].value + "\n\n"; temp = 0; confirm_str += "--------------------------------\n"; if(confirm(confirm_str)){ return true; } else return false; return true; } </SCRIPT> <INPUT id=checkbox1 type=checkbox value="同意" name=checkbox1>規約

  • アラーと表示がうまくいきません

    <SCRIPT LANGUAGE="JavaScript"> <!-- function aaa(){ if(document.a.ADD01.selectedIndex==0){ alert("カテゴリを選んで下さい。");document.a.ADD01.focus();return false; }else if(document.a.EMAIL.value=="" &&document.a.TEL.value==""){ alert("メールアドレスか電話番を入力して下さい。"); document.a.EMAIL.focus(); return false; }else{ return true;} } // --> </SCRIPT> 上記の「メールアドレスか電話番号を入力して下さい。」のアラートを「メールアドレスを入力して下さい。」に変えたいのですが(document.a.EMAIL.value=="" && document.a.TEL.value=="")のどの部分までを消していいのか分かりません。

  • Javascriptで二重送信を防止したいが、画像ボタンだとうまくいかない。

    Javascriptでフォームの二重送信防止を行いたいのですが、 送信ボタンが画像だとうまく動作しないようです。 下記のサイトを参考に作ってみたのですが、アラートすらもでないようです。 http://www.futomi.com/lecture/javacss/double_block.html 何かよい策がありましたら教えてください。お願いします。 <<ソース>> <script language="javascript"> <!-- // function submitForm() { document.formname.button.disabled = true; submitForm = disableButton; document.formname.submit(); return false; } function disableButton() { alert('処理中です。しばらくお待ち下さい。'); return false; } // --> </script> ~以下省略~ <form method="POST" form name="formname" action="test.cgi"> ----送信ボタンのコード----- <input type="image" src="images/acc_send.gif" name="send" onclick="submitForm()"> </form>

  • 半角英数字のみの入力にエラーを返すには

    運営しているサイトに設置したコメントフォームからスパムがたくさん送信されてきます。 その対策として、「氏名のよみがな」入力欄が半角英数字のみの入力の場合にはアラートを出して投稿できないようにしたいです。 下記のようなJSを使用していますが、 if (!kana) { alert('氏名のよみがなを入力してください。'); return false; } の部分を変更して「半角英数字しか入力されていない場合、アラートを返す」ようにするには、どうしたら良いでしょうか? htmlの文字コードはShift_JISです。 よろしくお願いします。 function postComment { var name = eval('document.name.value'); var kana = eval('document.kana.value'); var email = eval('document.email.value'); var comment = eval('document.comment.value'); sum++; if (!name) { alert('氏名を入力してください。'); return false; } else { if (!kana) { alert('氏名のよみがなを入力してください。'); return false; } else { if (!email) { alert('メールアドレスを入力してください。'); return false; } else { if (!comment) { alert('コメントを入力してください。'); return false; } else { var confirm_text = '以下の内容で送信します\n' + 氏名:' + name + '\n よみがな:' + kana + '\n メール:' + email + '\n 本文:' + comment; if (!confirm(confirm_text)) { return false; } else { alert('コメントを送信しました。'); } } } } } }

  • 一括で入力のチェックをしたいのです!

    どなたか教えてください・・・ フツー入力チェックを行う場合 <SCRIPT language="JavaScript"> <!-- function Check(){ if(document.myform.Name.value==""){ alert("名前を入力してください。"); return false; } if(document.myform.Email.value==""){ alert("Eメールアドレスを入力してください。"); return false; } if(document.myform.Email.value.indexOf("@")<=0){ alert("Eメールアドレスが正しくありません。"); return false; } if(document.myform.Comment.value==""){ alert("コメントを入力してください。"); return false; } return true; } // --> </SCRIPT> こんなカンジで各フォーム毎にチェックを行い メッセージを出したりすると思うのですが、 フォーム数が多いため、入力のチェックを 一括で行いたいのですが・・・ JavaScriptを始めて間もないため とんちんかんな質問をしている様でしたら すみません。 どなたか入力チェックを一括で出来る方法を 教えて頂けないでしょうか・・・ お願いします。

  • JavaScript 遷移中止できない

    下記のようなコードで 「本当に画面遷移してもいいですか?」にいいえを答えたら、 falseが返され、遷移が中断されるようにしたかったのですが、 遷移してしまいます。 なぜか考えてもわからないので、ご存知の方がいたら教えて頂きたいです。 <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> </head> <body> <a href="https://www.--------">サイトへ遷移します</a> <script language="javascript" type="text/javascript"> function func_check(){ if( confirm("本当に画面遷移してもいいですか?") ) { return true; } else { return false; } } </script> </body> </html>

  • 外部ファイルを読み込んで表示

    これが外部ファイル(CheckUtil.js)です。 //入力データ(テキストデータやテキストエリア)の必須チェック function requiredCheck(strVal,strErr) { if(strVal=="" || strVal==undefined){ return strErr + "は必須入力です \r"; }else{ return ""; } } これを読み込んで表示させたいです。 <HTML> <HEAD> <META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=sjis"> <TITLE>ファイル操作</TITLE> <!-- {literal} --> <script language="JavaScript" src="CheckUtil.js"></script> <script language="JavaScript"> </HEAD> <BODY> <!-- function chk(part){ strErr = ""; strErr+ = requiredCheck(part.value,"なまえ"); if(strErr == ""){ return true; }else{ window.alert(strErr); return false; } } //--> </script> <!-- {/literal} --> <BR> <FORM ACTION="<?php echo $PHP_SELF; ?>" METHOD="POST" name="fm" onsubmit="return chk()> <INPUT TYPE="text" NAME="name" SIZE="40"><BR> <INPUT TYPE="text" NAME="comment" SIZE="40"><BR><BR> <INPUT TYPE="submit" NAME="submit" VALUE="ボタン" onsubmit="return chk()"><BR> </FORM> <BR><BR> </CENTER> </BODY> </HTML>

  • onSubmit=の後ろは複数可能でしょうか?

    <SCRIPT language=JavaScript><!-- function check() { ・ ・ ・ <FORM action="mailto:××@××.com method="post" enctype="text/plain" name="myform" onSubmit="return Check()"> で未記入のものを確認してアラートを出すようにしています。 この機能にフォーム送信後、指定ページへ移動するようにしたいのですが、それは 可能ですか?となると別ページへの移動は function Start(){ setTimeout('window.location.href="他のページのファイル名.htm"',5000); } // --> </SCRIPT> ・ ・ ・ <FORM action="mailto:××@××" method="post" enctype="text/plain" name="myform" onSubmit="Start()"> になると思うのですが、onSubmit=の後に"return Check()"と "Start()"というのは両方使えるものなのでしょうか?;でつないでも正しく動いてくれません。ページ移動が無理なら、"return Check()"を使う、 sent=0 function Check(){ if(sent==0){ sent=1; return true; }else{ if(confirm("1度送信された可能性があります。")){ return true; }else{ return false; } } } かなと思ったのですが、これだと未記入の場合のアラートが出なくなります。 もう行き詰まってしまいました・・。 解決策をご存知の方、ぜひお願いします!