java - 如何使用 Java 和 Eclipse 在 HTML 网站上启动 Jquery 事件?

标签 java jquery html

我正在尝试模拟点击学校门户网站登录页面上的按钮。但是,当我查看代码时,我只看到名称和 ID,然后是“事件”按钮。 “事件”按钮显示重定向到 jquery 文件,将用户重定向到特定链接。我附上了部分代码。

我如何在我的代码中启动该事件来模拟按钮点击并自动重定向。

附言我会不断检查回复,所以如果没有足够的信息,请告诉我,这样我就可以提出更好的问题。

[这是登录按钮代码的图片:

<input id="LoginButton" style="visibility: visible" type="button" value="Log In">事件

我需要直接从我的应用程序执行这些操作。 (这位于 index.php 文件夹中

function gotologinreminder() {
    top.location = '/novi/StudentPortal/Home/LoginReminder';
};
$("#LoginButton").click(function () {
    $("#msgdisplay").hide();
    $("#imgwait").show();
    if ($("#Pin").val() == "" || $("#Password").val() == "") {
        $("#imgwait").hide();
        $("#msg1").show();
        return;
    };
    $("#loginform").submit();
});
$("#loginform").ajaxForm(function (retval) {
    if (retval.valid == "0") {
        $("#imgwait").hide();
        $("#msgmessage").html(retval.msg);
        $("#msgdisplay").show();
        $("#Pin").val("");
        $("#Password").val("");
        $("#Pin").focus();
    } else {
        $(window).off('resize.rightcolumn');
        top.location = '/novi/StudentPortal/Home/PortalMainPage';
    };
});
function clearmessages() {
    $("#msgdisplay").hide();
    $("#msg1").hide();
};

谢谢,

德米特里

最佳答案

如果我没理解错的话,您想通过 Java 代码登录到一个网站,该网站的代码是用 JavaScript 编写的。在这种情况下,最好查看在 Network tab in the developer console. 中登录时发生的网络请求。特别查看那些使用 POST 方法发出的请求,因为这意味着您的浏览器正在向网站发送信息。我还建议使用 Jsoup 库,因为它有助于处理此类请求。

编辑 1:我做了一个 album屏幕截图以帮助您理解。 最后一张图片是您将放入 Java 类中以进行相同登录的代码。 (我模糊了一些信息,但你会明白的)

获取文档后,您还可以使用 Jsoup 抓取网站,here is the documentation .

注意:你的JS代码显示的无非是验证和网站UI的相应变化,例如检查用户或密码是否为空,然后在网站上显示错误。实际的表单提交功能 (retval) 不在您显示的代码中(至少据我所知)。

要使用 Jsoup 传递登录 cookie,您可以这样做:

 Document profilePicDocument = Jsoup.connect(This is the new URL you want to access)
            .cookies(secondLoginPost.cookies()) //secondLoginPost is the last POST request
            .get();

关于java - 如何使用 Java 和 Eclipse 在 HTML 网站上启动 Jquery 事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54116732/

相关文章:

java - 如何在javaFx中绘制具有多个点的线?

java - 在Java中转换为大写和小写

java - 交换方法中变量 i 减 1 的目的是什么? - 1 真的是公平随机化所必需的吗?

javascript - 每触发 n 个 select onchange 事件,发送 n 次 ajax 表单

jquery - 组织 jQuery Mobile 应用程序的最佳实践是什么?

java - 跨域调用如何获取客户端域名

javascript - 何时何地不成功: value executes in jQuery Ajax method?( header 位置未更改)

html - 由于 KB2898785 IE6 不会为远程传送的页面加载本地来源的 CSS——如何更正?

jquery - 页面中央的图像 - 可调整大小

javascript - 使用 JavaScript 更改 GIF 颜色