0

次のシナリオがあります(変更できません)。クラシックなASPページがあります。その中に、aspコード、javascriptコード、およびVBscriptコードがあります。ユーザーが確認ボタンをクリックすると、javascript関数「確認」が実行されます。その中で、ページはそれ自体にフォームを送信します。

私が達成したいのは次のことです。そのjavascript関数confirm内で、Webページのhtmlを文字列として簡単に取得できます。しかし、私が欲しいのは、ページが自己送信を処理するときにVBScript部分でその文字列を取得することです。私は次のことを試しました:

  1. ページのasp入力非表示コントロールに挿入し、JavaScriptからその入力に必要な文字列をロードします。その後、私はそれをVBScriptで取得することを期待していましたRequest("controlId/controlName")。しかし、入力隠しコントロールはそれほど大きな文字列を持つことができないため、失敗します。

  2. JavaScriptのconfirm関数で、文字列のセッション変数をロードします。しかし、セッション変数にクライアント側の変数を書き込むことができないようです。

  3. JavaScript関数を介して一時ファイルを保存し、それを入力ファイルコントロールに渡すこと。これは私が考えただけです。クライアント側に一時ファイルを保存することは良い解決策ではないと思うので、私はまだこれよりも良い解決策を見つけると信じています。また、クライアント側でJavaScriptを使用してファイルを作成する方法も正確にはわかりません。

私はこれをすべて試したことを覚えています。私が試した別のことを覚えている場合は、ここに投稿します。

デスクトップに何度も顔をぶつけてきましたが、解決策が見つかりません。どんなアイデアでも本当に役に立ちます。

4

2 に答える 2

1

しかし、入力隠しコントロールはそれほど大きな文字列を持つことができないため、失敗します。

method="post"フォームの代わりに使用するmethod="get"と、データサイズは実質的に無制限になります。つまり、制限が数キロバイトから数メガバイトに変更されます。

しかし、セッション変数にクライアント側の変数を書き込むことができないようです。

それは正しいです。セッション変数はサーバー側にのみ存在します。

javascript関数を介して一時ファイルを保存し、それを入力ファイルコントロールに渡す。

これは2つのステップからなるプロセスであり、各ステップ自体は一般的に不可能です。Javascriptを使用してローカルファイルシステムにアクセスしたり、Javascriptを使用して入力ファイルコントロールのファイル名を設定したりすることはできません。

于 2013-02-02T11:56:41.200 に答える
0

では、JavaScriptを使用してASPでhtmlページを取得したいですか?

なぜあなたはそれをしたいのですか。フォームとpostメソッドを使用して、大きな文字列を送信できます。

于 2013-02-02T11:52:47.967 に答える