我正在使用HTMLunit填写网站上的表单,但却被困在需要提交的HTMLanchor上。
html代码:
<a id="syi-place-ad-button" class="button primary medium "><span>Plaats uw advertentie</span></a>
尝试点击它:
HtmlAnchor submitButton = (HtmlAnchor) page2.getElementById("syi-place-ad-button");
form2.appendChild(submitButton);
page3 = submitButton.click();;
webClient.waitForBackgroundJavaScript(10*1000);
webClient.setAjaxController(new NicelyResynchronizingAjaxController());
WebResponse response = page3.getWebResponse();
String content = response.getContentAsString();
System.out.println(content);
webClient.closeAllWindows();
最后给出了这个错误:
== CALLING JAVASCRIPT ==
function (e) {
return st === t || e && st.event.triggered === e.type ? t : st.event.dispatch.apply(s.elem, arguments);
}
======= EXCEPTION END ========
任何人都可以帮助我前往我可能会遗失或错误的地方吗?
答案 0 :(得分:0)
你能停止在后台运行的javascript并让我知道结果。将JS放在下面
client.setJavaScriptEnabled(false);
答案 1 :(得分:0)
虽然在2.13中不推荐使用setJavaScriptEnabled(boolean),但它已被添加到WebClient的WebClientOptions成员中。这是文档。
要禁用JavaScript,您应该这样做:
webClient.getOptions()setJavaScriptEnabled(假);