プロが教える店舗&オフィスのセキュリティ対策術

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

gooドクター

A 回答 (3件)

No.2の回答に対する回答(変な日本語ですが)です。



JSPとJavaScriptの処理の行われる順番について考えていないと
エラーになることがありますよ。
大まかな流れは、
 JSPのソースをサーバ側で解釈、実行する(HTMLのソースを吐き出す)
  ↓
 クライアントに生成したソースを送信する
  ↓
 クライアント側のブラウザがソースを解釈する
  ↓
 ソースの中のJavaScriptを、ソースの上のほうから順次実行する
  ↓
 同時に、通常の表示(HTMLの解釈)も実行される

 と、こういう流れですので、例えば、JavaScriptで値を入力し、
JSPでその値を使おうとすると、エラーとなります。

 具体的にやりたいこと(やろうとしていること)を書いていただいたほうが
適切に回答できますが、上記が今考えられるエラーの原因です。
    • good
    • 2
この回答へのお礼

なるほど、処理の実行順序を考えて行ってないとエラーが発生してしまうのですね。

お礼日時:2003/02/26 16:32

もし、単純にJSP処理と処理の間にアラート表示などをさせたいならばこういう記述があります。



<%
  JSP処理A
%>
<Script Language=”JavaScript”>
 Alert(”<%=JSPの変数%>”);
</Script>
<%
  JSP処理B
%>

(タグ扱いされると困るので、全角で書きました。
見づらいかと思いますが、ご容赦ください。)
    • good
    • 2
この回答へのお礼

ありがとうございます。上記の方法で、
変数などをalertで表示することはできました。
しかし、alert以外の処理を行うとエラーの発生することがあります。
推奨されたやりかたではないのでしょうか?

お礼日時:2003/02/25 21:30

「JSPの処理の *途中で* ~」というのは、無理です。



どこでプログラムが動いているか、を考えてください。
JSP は、Webサーバで、Javascript はクライアントのブラウザ上で動作するものです。

JSP の処理中で、問い合わせを行いたいたいところがあれば、処理を中断し、alert() などの
javascript を onload などで実行するようなページにして、クライアントで入力をさせ、
その入力内容をパラメータとして、再度 JSP の処理をさせる、ということになります。
    • good
    • 2

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

gooドクター

このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング