元の質問がわかりにくかったので、書き直しました。今ではもっとはっきりしています。
こんにちは、HtmlUnit を使用して Web ページをナビゲートしようとしています。URLに移動しようとしています->テキストボックスにテキストを入力します(フレーム1)->検索ボタンを押します(フレーム1)->検索の結果として表示された新しいフレーム(フレーム2)に移動します。
このコードを書くとき:
HtmlPage page = webClient.getPage("http://someurl.com");
HtmlPage toolbar = (HtmlPage) page.getFrameByName("toolbar").getEnclosedPage(); //GET TOOLBAR FRAME
HtmlTextInput searchBox = toolbar.getElementByName("query"); //GET TEXT BOX ELEMENT
searchBox.setValueAttribute("SOME STRING"); //FILL TEXT BOX ELEMENT WITH TEXT
List<HtmlElement> elements1 = (List<HtmlElement>) toolbar.getByXPath(<SOME XPATH>); //LIST OF A SINGLE ELEMENT WHICH IS THE SEARCH BUTTON
HtmlElement element2 = elements1.get(0); // GET SEARCH BUTTON ELEMENT FROM LIST
page = element2.click(); // CLICK SEARCH BUTTON AND LOAD NEW PAGE TO "page"
を探してい"SOME STRING"
ます。これを行うと、追加のフレームを含む別のページが表示されます (ページは更新されませんが、URL は更新されません)。今、私は検索ボタンをクリックしますが、新しいpage
ものはtoolbar
フレームのウェブページであり、ウェブページ全体ではありません.
追加のフレームにアクセスしたいと思います。では、現在のフレームを「バックアウト」して新しいフレームを選択するにはどうすればよいでしょうか。