使用Htmlunit,按钮单击不起作用();

时间:2013-01-23 07:36:45

标签: java javascript login htmlunit

大家好:)我是HtmlUnit(Java)的新手。这是我第一次使用HtmlUnit的东西。 我在登录网页时遇到了一些问题。

网站的某些部分来源如下。

    <table>
        <tr>
            <td colspan="2">
                <div class="AlignRight">
                    <div class="Button" id="loginButton">
                        <div class="Left">&nbsp;</div>
                        <div class="Middle"><a href="javascript:submitForm(document.getElementById('localLogin'), 'submit');"><strong>log-in</strong></a></div>
                        <div class="Right">&nbsp;</div>
                    </div>
                </div>
            </td>
        </tr>
    </table>

我想要的代码的一部分在下面,加上我设置“webClient.setJavaScriptEnabled(true);”已经

HtmlPage page = (HtmlPage) webClient.getPage("https://************");
            HtmlForm form = page.getFormByName("login");
        HtmlElement button = form.getElementById("loginButton");

                    // Enter login and passwd
                    form.getInputByName("username").setValueAttribute("******");
                    form.getInputByName("password").setValueAttribute("******");
                    page = (HtmlPage) button.click();
                            System.out.println(page.getUrl());
                    System.out.println("Success");

所以..运行代码之后,应该在点击按钮后更改网址,但我看不出有任何区别。运行没有错误但只是我看不到更改的Url ..

有什么不对吗? .. 请给我一些建议T_T!提前致谢:D

1 个答案:

答案 0 :(得分:1)

您可以尝试手动执行javascript:

   page.executeJavaScript("javascript:submitForm(document.getElementById('localLogin'), 'submit');");