- 締切済み
Javascriptで生成されたページの情報取得方法
Javascript初心者です。 ある画面で検索条件を指定して、送信ボタンを押下すると、検索結果をJavascriptで生成したページで表示するサイトがあります。結果はテーブルで表形式に表示されます。 この検索結果をJavascriptかVBscriptで取得したいと考えています。 HTML情報とテキスト情報両方とも取得できたらうれしいです。 document.all(1).innerHTML で取得しても、実際の画面に表示されているHTMLとは異なる情報しか取得できません。 生成後のHTML情報の取得方法をご教授ください。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- MO_
- ベストアンサー率100% (2/2)
「送信ボタンを押下すると、検索結果をJavascriptで 生成したページで表示する」の意味が、「document.write()」で 生成された場合と仮定して回答させていただきます。 (JavaScriptで生成と言ってもwindow.open()でJavaScriptで ウィンドウを開いただけで、開いたページはCGIやPHPで生成 されたページでは意味が異なりますので。) 一番手っ取り早いのは、document.write()で生成するときに <INPUT type="hidden">でhiddenオブジェクトに値を入れておき ここから値を取り出すと、殆どのクロスブラウザで値が取得出来ます。 ちなみにIE6.0、NN7.1、OP7.23で問題なく動作しました。 (ただし、IE6.0+WindowxXP SP2の環境だとセキュリティブロックの 警告が出る可能性が有ります。) この方法であればHTMLでも何でも、任意の値をhiddenオブジェクトに 格納しておけるので、やりやすいかなと。 //////////////////////////////////////////////// <HTML> <HEAD> <TITLE>別窓で開いたウィンドウ内にhiddenオブジェクトで値を隠しておき alert()で値を取得しています。</TITLE> </HEAD> <BODY> <SCRIPT Language="JavaScript"> <!-- function NewWin(){ var IHTML = '<HTML><HEAD><TITLE>NewWin</TITLE></HEAD><BODY>\n'; IHTML += '<FORM name="FORM01">\n'; IHTML += '<INPUT type="hidden" value="ここに値" name="OBJ01">\n'; IHTML += '<INPUT type="button" onClick="alert(document.FORM01.OBJ01.value)" value="値取得">\n'; IHTML += '</FORM>\n'; IHTML += '</BODY></HTML>\n'; Win01=window.open('','Win01','width=200,height=200'); Win01.document.write(IHTML) Win01.document.close() } //--> </SCRIPT> <FORM> <INPUT type="button" value="ボタン" onClick="NewWin()"> </FORM> </BODY> </HTML>