2016-08-01 11 views
1

私は単純に(HTMLスクリプトタグで管理されたJavaScript環境で)ウェブページを読み込み、そのページのボタンを押してみようとしています。私はまた、Webページからデータを読み取ることができるようにしたいが、それは一度ボタンを押して作業を取得すると、それは自明である必要があります。私は解決策を見てきましたが、うまくいくものはありません。JavaScriptを使ってウェブサイト上のボタンを押す

管理された環境のために、私は2つのシンプルなウェブサイトを持っています。最初に、JavaScript関数を呼び出すボタンがあります。このボタンでは、Webサイト2を読み込み、別のボタンを押します。 Webサイト2には、押されるとJavaScript関数が呼び出され、ダイアログボックスが生成される単一のボタンがあります。

私はwindow.open()を使用してページ2を読み込むことができますが、私はそれを保存するウェブサイトへのハンドルである戻り値の型を持っていると思います。私はそのハンドルを使用して、Webページ2でjavascript関数を呼び出そうとしました。私はIDで要素を取得し、click()/ submit()を使用してみました。

サイト1:私は、ウェブサイトの階層をナビゲートし、そこからデータを取得しようとしている

<html> 
    <body> 
     <script language = "javaScript"> 
      function testFunc() { 
       alert('Hello World'); 
      } 
     </script> 
     <p><button onclick = "testFunc() id = "buttonTest"">test</button></p> 
    </body> 
</html> 

:2

<html> 
    <body> 
     <script language = "javaScript"> 
      function print() { 
       //alert('Hello World'); 

       var win = window.open("file:///Users/Jacob/Documents/2ndWebTest.html"); 

       win.document.form[0].submit(); 
      } 
     </script> 
     <p><button onclick = "print()">test</button></p> 
    </body> 
</html> 

ウェブサイトおよびここに現在の試行へのコードです。私はこれが少なくとも理論的には機能するはずだと思うが、ウェブサイト2の機能や要素にアクセスすることはできない。

+1

確かに面白いアイデア:私は、このコマンドを使用して、他の1アクセス:

var win = window.open("localhost/TestSite/2ndWebTest.html"); 

を私も同様読み込むファイル2ndWebTest.htmlで8行目で、二重引用符を修正しますクロスサイトスクリプティングの対象になります。 –

答えて

1

上記の例では、ターゲットファイルが格納されているフォルダにアクセス権を与えない限り、Webサーバーはアクセス拒否エラーをスローします。

私のローカルコンピュータでは、TestSiteという仮想ディレクトリを設定して2つのファイルを配置することで、使用例を得ることができました。しかし、私はこれを信じて、

<p><button onclick = "testFunc()" id = "buttonTest">test</button></p> 
関連する問題