• ベストアンサー

確認ダイアログを表示出来ない

jspファイルからJavaサーブレットへ削除対象情報を渡し、削除処理をしています。 submit処理の際、Javascriptでconfirmを利用して削除確認ダイアログを表示させたいのですが、表示が行われず、Javaサーブレットの処理が正しく実行されてしまいます。jspファイルをHTMLで表示させたところ、削除情報パラメータは見かけ上は正しく渡されているようです。以下のJavascriptの記述で問題となる部分が有るでしょうか? 削除対象確認画面nnnn.jspより呼び出されるjavascript check_nnnn.jsの記述は次の通りです。 taisyo_Noの値の先頭から8バイトにキー項目、9バイト目より確認情報をセットしています。 ************ function check_nnnn() { wkname = document.formnnnn.taisyo_No.value.substring(8); wkres = confirm("削除対象は次の通りです。" + "\n\n" + "対象:" + wkwname); if (!wkres){alert("確認画面に戻ります");return false;} } ******************** 尚、ブラウザはIE6.0を使用しております。

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

  • ベストアンサー
  • sawagani
  • ベストアンサー率73% (19/26)
回答No.5

単に、ここへの記述時の入力ミスかもしれませんが、 <script language="javascript" src="check_nnnn"></script> "check_nnnn"の部分ですが、"check_nnnn.js"ではないでしょうか? そうだとすると、functionが存在してないことになるのでスクリプトエラーが発生すると思います。 IEの設定で、[スクリプトエラーごとに通知を表示する]にチェックが入っていないと エラー発生に気づかないことがあるので、その点も確認してみてください。 ([ツール]-[インターネットオプション]で開いたダイアログの[詳細設定]) チェックが入ってないと、スクリプトエラーが出てもサブミットまで実行されてしまいます。

Adenau
質問者

お礼

漏れてました。また、IEの設定も行っていませんでした。エラーがpopされるようになり、非常に助かりました。 有難うございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (4)

  • furuhehe
  • ベストアンサー率60% (3/5)
回答No.4

これでダメならごめんなさい。 一連のソースが見えないので予想でしか言えないんですがこのファンクションに来る前に  document.formnnnn.submit() のように、イベントやイベントから呼ばれる ファンクション中でsubmit()を呼んでいませんか? <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-2022-JP"> <title>t</title> <script language="JavaScript"> function test(){ alert("onSubmit()より呼ばれた!"); } function test2(){ alert("ここでsubmit()を実行すると…onSubmit()は呼ばれない"); document.theForm.submit(); } </script> </head> <body> <form name = "theForm" onSubmit = "test()"> <input type = "button" value = "先にsubmit()" onClick = "test2()" > <input type = "submit" value = "普通のsubmit" > </form> </body> </html>

Adenau
質問者

お礼

丁寧なアドバイスを有難うございました。 ソースを直接コピぺ出来ない環境で質問している為、判り難く、回りくどい説明にお付き合い頂き申し訳有りませんでした。

Adenau
質問者

補足

この画面処理の中にsubmitはボタンにしか存在してない事を確認しました。 <input type = "submit" value="削 除"> 前述の2行とこの部分しかjavascpirtの起動に関わる記述は無い様です。(勿論、値の設定については別途存在していますが…) 尚、前述の2行も含め<body>~</body>タグ内で定義しております。

全文を見る
すると、全ての回答が全文表示されます。
  • furuhehe
  • ベストアンサー率60% (3/5)
回答No.3

それではもう一点確認です。 wkname = document.formnnnn.taisyo_No.value.substring(8); wkres = confirm("削除対象は次の通りです。" + "\n\n" + "対象:" + wkwname); 上記の"対象:"の後の変数名(wkwname)が違うのは 打ち込みのミスですか?

Adenau
質問者

補足

ご指摘の通り、誤打鍵です。 画面を切り替えて手打ちしているのでしくじってしまいました。失礼しました。

全文を見る
すると、全ての回答が全文表示されます。
  • jurarumin
  • ベストアンサー率34% (190/544)
回答No.2

もしくは、wkname の取得に失敗している? 一度、wkname を使わないでダイアログの出力を確認してみたらどうですか?

Adenau
質問者

お礼

 御回答有難うございました。 また、御指摘等宜しく御願い致します。

Adenau
質問者

補足

変数wkname部分の取込みごとそっくり外して試してみたのですが、表示されない模様です。 何か根本的の問題の様な気がして来ました。。。

全文を見る
すると、全ての回答が全文表示されます。
  • furuhehe
  • ベストアンサー率60% (3/5)
回答No.1

check_nnnn()が呼ばれていないなんて事はないですよね?

Adenau
質問者

お礼

 御回答有難うございました。 また、ご指摘宜しく御願い致します。

Adenau
質問者

補足

 それは流石に大丈夫(の筈)です。 jsp側では <form name="formnnnn" method="post" action="/~/nnnn" onsubmit="return checknnnn()"> <script language="javascript" src="check_nnnn"></script> と記述しています。  一応、どちらも同一フォルダー上に存在しております。また、動作実績(ダイアログがポップする)のあるソースを元にjspもJavascriptもコピー元にして作成したのですが…。 あと、functionの後は"checknnnn()"が正しかったです。失礼しました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • JSPで「処理中」をブラウザに表示

    サーブレット+DB、JSPでプログラムをしています。 以下の質問(CGIが対象です) http://www.okweb.ne.jp/kotaeru.php3?q=173368 と似たようなことを、JSPで行うにはどうしたらよいでしょうか。 サーブレットの処理中(長い処理)に、「処理中」のメッセージを表示して、終了したら完了ページに飛ばしたいのです。 「処理中」の表示はJSPでもJavaScriptでも、サーブレットから直接出力しても構いません。 さらに言えば、サーブレットではfor文で処理を回しているので、「○%完了」などが表示できたら最高です。 よろしくお願いします。

    • ベストアンサー
    • Java
  • 確認ダイアログ表示後、他のページにジャンプさせたい

    PHPと連携させたいのですが、削除ボタンをクリックしたときに、「本当に削除しますか?」というダイアログを表示後、OKボタンをクリックされたら削除の処理のページに移る、ということをしたいと考えています。 <html> <head> <SCRIPT language="JavaScript"> <!-- function Confirm(){ if (window.confirm("本当に削除してよろしいですか?")){ } } //--> </SCRIPT> </head> <body> <form action="del.php"> <input type="hidden" name="delkey" value="1"> <input type="submit" value="削除" onClick="Confirm();"> </form> </body> </html> と、ここまでわかったのですが、OKを押されたときの処理はどのように記述すればいいのでしょうか。 もちろん、delkeyの値もdel.phpに渡したいと考えています。 よろしくお願いします。

  • 削除ボタンの確認ダイアログを表示させると処理が進まない

    いろいろ検索しましたが、回答が得られなかったため質問します。 削除ボタンを押した時、確認ダイアログを表示させ、 OKをクリックすると処理が進むようにしようと思っているのですが、 下記のコードだと、OKでもキャンセルでもonclickの処理に進まず困っています。 ■javascript function del_confirm(){ Ans = confirm("削除します"); if(Ans==true){ alert("削除しました"); return true; }else{ alert("キャンセルしました"); return false; } } ■body <input type="submit" value="チェックしたものを削除" onmouseup="return del_confirm()" onclick="action_delete.php"> 間違ったところなどあればご指摘お願い致します。 わからないことがあれば追記しますので、 よろしくお願い致します。

  • 削除ボタンの確認ダイアログを表示させると処理が進まない

    いろいろ検索しましたが、回答が得られなかったため質問します。 削除ボタンを押した時、確認ダイアログを表示させ、 OKをクリックすると処理が進むようにしようと思っているのですが、 下記のコードだと、OKでもキャンセルでもonclickの処理に進まず困っています。 ■javascript function del_confirm(){ Ans = confirm(\"削除します\"); if(Ans==true){ alert(\"削除しました\"); return true; }else{ alert(\"キャンセルしました\"); return false; } } ■body <input type=\"submit\" value=\"チェックしたものを削除\" onmouseup=\"return del_confirm()\" onclick=\"action_delete.php\"> 間違ったところなどあればご指摘お願い致します。 わからないことがあれば追記しますので、 よろしくお願い致します。

  • 確認メッセージに、リストから選んだ名前を表示させることはできますか?

    こんにちわ いつもお世話になっております。 DBから動的に取得したリストからひとつ選びます。 例えば「りんご」を選び、削除ボタンを押すと「「りんご」を削除します。いいですか?」という確認メッセージを出したいのですが、javascriptでできますか? function showConfirm(){ return confirm("xxxを削除します。いいですか?"); } 今はこの状態で、普通の確認メッセージは表示させることができます。 このxxxにgetName(i)のように選んだ名前を入れたいのですが… return confirm("いいですか?"+getName(i)); とJavaのようにしてもダメでした。 良い方法を知っている方、ぜひご教授ください。

  • フォーム上で押されたボタンによってサーブレットの処理を変えたい

    Urizakaです。 さて、さっそく質問です。 JSPの同一フォーム上に「登録」「修正」「削除」のボタンを置き、その押された ボタンによってサーブレット内での処理が切り替わる(具体的には、違う SQL文を実行し、違うJSPページをgetRequestDispatcherメソッドで生成 する)ようにしたいのですが、どのようにすればよいのでしょうか? もちろんそれぞれの処理に対して別々のサーブレットを作り、javaScript でそれぞれのサーブレットへ飛ぶように制御するという処理も考えたことは 考えたのですが、できれば一つのサーブレットで済ませたいと考えたもので …宜しくお願いします。

    • ベストアンサー
    • Java
  • jsp/サーブレット

    jsp サーブレットを勉強しています。 jspに入力された値を サーブレットに投げます。 サーブレットからjavaクラスに値を投げて javaクラスで値が正しいかどうかを判断します。 その結果をサーブレットに投げて、 サーブレットからjspに投げて jspで結果を表示する。というのは理解できました。 しかし私が行いたいのは、 クライアントがjspにアクセスしたときに、 javaクラスにある値をjspに表示させたいというものです。 この場合はサーブレットに何も投げるものがないのですが、 jsp→サーブレット→javaクラス→サーブレット→jsp このようにサーブレットを使って表示させるには、 どのようなプログラムを書いたらいいのでしょうか。 わかりにくい説明で大変申し訳ないですが、 具体的なプログラムを教えていただけるとありがたいです。 また、参考になりそうなURLがありましたら教えてください。 よろしくお願いします。

  • JSPの処理の途中で、JavaScriptの処理をしたい

    プログラムをJSPで記述している(<% %>タグ)のですが、 JavaScriptのalertやconfirmなどのポップアップするダイアログを 表示したいのです。それは可能なのでしょうか?

  • JavaScriptの確認ダイヤログについて

    JavaScriptの確認ダイヤログについての質問です。以下のコードにて、チェックボックスをチェックした値について、削除ボタンを押すと「本当に削除しますか?」というダイヤログが表示され、OKを押せば削除処理を行うServletに、キャンセルを押せば元の画面のまま、という流れにしています。以下がコードです。 function Delete(){ //チェックボックスにチェックがされているものには、変数statusに1を代入 for (i = 0; i < document.form_out.elements.length; i++){ if (document.form_out.elements[i].checked){ var status = 1; } } // チェックボックスがすべて未チェックの場合 if(!status){ alert("削除する行を選択してください"); return false; } var del = document.forms("form_out"); var judge = confirm('本当に削除しますか?'); //確認ダイアログに対してOKをクリックした場合 if(judge==true){ //削除処理を行うサーブレットにPost送信 del.action = 'MerchandiseSrv_Delete'; del.submit(); }/*(1)*/ } ダイヤログは表示されるのですが、キャンセルを選択した場合も何故かServletに飛んでしまいます。つまり削除処理が行われてしまいます。(1)の部分に、 }else{ アラート('キャンセルしましたよ'); } と記述すると、キャンセルをクリック→アラートが表示→削除処理へ、という意味不明な?流れになってしまっています。Servletは削除機能だけなので、恐らくはこのJavaScriptコードが間違っていると思うのですが。どなたか教えていただけないでしょうか?よろしくお願い致します。

  • Javascript実行結果をサーブレットで読む

    JavascriptとJavaサーブレットの連携について質問させていただきます。 【やりたいこと】 あるJavascript対応のWebサービスから情報を取得し、その情報をJavaサーブレットで読み込む 【困っていること】 まずはJavascriptで情報を取得するためのHTMLファイルを作成し、ブラウザに表示させるところまではできました。 しかし、ページソースそのものが書き換わるわけではないので、Javaサーブレットから読み込む方法がわかりません。 何かやり方があるのでしょうか。 それとも、Javascriptのdocument.write関数で取得した情報をアウトプットするようにしているのですが、それがそもそもの間違いなのでしょうか。 ご存知の方がいらっしゃいましたら、お願いします。

    • ベストアンサー
    • Java
このQ&Aのポイント
  • If any と関係形容詞what の使われる文章について調査しました。
  • 関係形容詞what が使われる文章は、条件や可能性について述べる場合に使用されます。
  • 具体的な例文として、He wouldn’t eat up what little food, if any, I would leave.が挙げられます。
回答を見る

専門家に質問してみよう