ASP+JavaScriptにて開発しております。
以下のような記述をしました。
var a = new AObject();
Seesion.Contents("a") = a;
ページを更新してセッションオブジェクトからaを取り出してメソッドを実行しようとしたのですが、解放されているようで実行できません。
---------------------------------------------------
Microsoft JScript 実行時エラー エラー '800a1393'
解放されたスクリプトからコードを実行できません。
---------------------------------------------------
プロパティは取り出せます。
これを解消するにはどうしたらいいですか。
「ASP+JavaScript」というのが、ちょっと引っかかります。
ActiveServerPagesのデフォルトは、サーバーサイドスクリプトの記述は、「VBScript」です。
Kenju様は、これをあえて、「JScript」で記述しているということでしょうか?
var a = new AObject();
Seesion.Contents("a") = a;
上記の記述は、サーバーサイドスクリプトとして記述しておりますよね。
ですが、
Microsoft JScript 実行時エラー エラー '800a1393'
解放されたスクリプトからコードを実行できません。
のメッセージは、サーバサイドでなく、クライアントサイド(ブラウザ側)で表示しているように思えます。
クライアントサイドスクリプトで、サーバ側のセッションオブジェクトは参照できません。
サーバーサイド、クライアントサイドの処理をご理解頂けておりますでしょうか?
そのあたりを確認してみると良いかと思います。
ご回答ありがとうございます。
>Kenju様は、これをあえて、「JScript」で記述しているということでしょうか?
そうです。
そしてご推察の通り、メッセージはブラウザに表示されます。
これはASPエラーが出た時、ブラウザで確認できるようにしているためです。
クライアントサイドのスクリプトは何も書いていません。
サーバサイドの実行エラーのメッセージがクライアントに送信されてきたのです。
>サーバーサイド、クライアントサイドの処理をご理解頂けておりますでしょうか?
そんな基本的なレベルで詰まっているわけではありません。