最新閲覧日:

メンテナンス画面から登録ボタンを実行して、
入力内容にエラーがあったら、
エラーメッセージを表示して、
登録画面をもう一度表示する。

といった処理にしたいのですが、
エラーメッセージをVBScriptで表示すると、
メッセージが、どうしても2回表示されてしまいます。

例)
<% If xx then %>
<script language=VBScript>
<!--
MsgBox("aaa")
//-->
</script>
<% End If %>
:
:
:
<html>
:
:
</html>

<html>タグの前に<script>タグを書くとsubmitされるのでしょうか?

結局、html中のjavaScriptに書き込んで、<body>のonloadでメッセージを
表示する処理に直したのですが、腑に落ちないので…
ご存知の方、教えてください。

ちなみに環境はNT4.0、IE5.5です。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

こんにちは。

itohhといいます。

あまりにもソースを省略しすぎて解らないのですが。
まず、
<%...%>は、サーバ側(IIS/ASP)で動きます。
そして、
><script language=VBScript>
><!--
>MsgBox("aaa")
>//-->
は、ブラウザ側で動作するコードです。

ですので、
><% If xx then %>
><script language=VBScript>
><!--
>MsgBox("aaa")
>//-->
></script>
><% End If %>
ここのところは、サーバ側でxxが真になる場合だけ、IfとEnd Ifの間のコードを
ブラウザ側に送ります。
その後、ブラウザ側でMsgBox("aaa")が実行されます。

載っているソースではここまでしか解りません。

あと、ブラウザ側で動作するスクリプトがこのままだと、VBScriptですよね。
一般的にブラウザ側で動作するスクリプトはJavaScriptのほうが良いですよ。
VBScriptが動作するのは、WindowsのIEだけですよ。ネスケなどでは動作しません。
    • good
    • 0

(使用するソフトによって違ったりすることもあるのかもしれないので、


はっきりとは言いきれないのですが・・・)

ASPだからVBScriptなのかどうかはわかりませんが、
わたしの使用しているソフトでは、<%~%>で囲った部分はVBScriptです。
hyahooさんも、<%If~%>の部分はVBScriptだとおっしゃっていましたが、
それならば、<script language=VBScript> で宣言をする必要はないのではないでしょうか?

入力チェックはjavascriptでは駄目なのですか??
わたしは、<HEAD>~</HEAD>の部分にいれてありますが・・・

もう少し詳しく説明していただけると、嬉しいです。
    • good
    • 0

私もあまり詳しい訳ではないのですが・・・



ソフトは何を使用されていますか??
<%~%>で囲った部分は、VBScriptではないのですか??

わたしもMicrosoft Visual InterDevでASPをやっているので、
少しはお役に立てるかもしれません。

この回答への補足

私も今回ASPは初めてでよくわかってないのですが、
<%~%>はJSPの処理タグと同じだと思ってます。

JSPだと<%~%>の中はjavaだから、ASPだとVBScriptってことでしょうか?

一通り、流れを追ってみて、<%IF ~%>のところは、1回しか通ってないと思ったんですが、分かりにくいですね。

すいません、ますますややこしくなってしまった。

補足日時:2001/10/17 15:55
    • good
    • 0

このQ&Aに関連する人気のQ&A

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

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

このQ&Aを見た人が検索しているワード


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

人気Q&Aランキング

おすすめ情報