アプリ版:「スタンプのみでお礼する」機能のリリースについて

下記の参考ソースを見ていただきたいのですが、
dateFunc関数で得たboolean値をもとに、
真なら「success.asp」を、
偽なら「failure.asp」を、
呼び出したいのですが、
何故か両方の関数が呼ばれています。
何故なのでしょうか。

OS:Windows2000
Web:IE6
です。

参考ソース
<SCRIPT LANGUAGE="VBScript">
<!--
recDate = dateFunc()
If recDate = true Then
<% Server.Execute "success.asp"%>
Else
<% Server.Execute "failure.asp"%>
End If
-->
</SCRIPT>

A 回答 (2件)

クライアント側のスクリプト内でサーバタグを書いても、


クライアント側に降りてから実行されることはありません。
実行後に生成したページがクライアントに投げられます。

>何故か両方の関数が呼ばれています。
上記の理由で先に実行された結果が降りるからです。

クライアント側で次ページを条件で分岐するなら、
素直に判断記述の中でlocation.replaceさせるのでは?
    • good
    • 0

dateFunc()を呼び出すのはクライアント(すなわちWebブラウザ)ですので、サーバ側(すなわちIIS)で処理される<% Server.Execute %>は実行済みです。



dateFunc()をサーバ側で実行する必要があるかと。
    • good
    • 0

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