【问题标题】:Input form from javascript console Chrome来自 javascript 控制台 Chrome 的输入表单
【发布时间】:2020-01-15 08:23:42
【问题描述】:

我尝试使用 Chrome 控制台在此网站上输入表单用户名和密码:https://ucp.nordvpn.com/login/ 但是当点击按钮登录时。它显示错误“用户名不能为空”

请帮助我。谢谢

// Input prompt format user:password
var account = prompt('Account?');
if (account) {
    account = account.split(":");
    console.log(account);
    document.querySelector("#ucp_login_email_field").value = account[0];
    document.querySelector("#ucp_login_password_field").value = account[1];
    document.querySelector(".Button").click();
}

【问题讨论】:

    标签: javascript google-chrome google-chrome-console


    【解决方案1】:

    这对我有用。请试试这个。但首先检查 account 是否为空。

    // Input prompt format user:password
        var account = ["demo@gmail.com", "123456"]; 
        if (account) {
            console.log(account);
            document.querySelector("#ucp_login_email_field").value = account[0];
            document.querySelector("#ucp_login_password_field").value = account[1];
        };
        if (document.querySelector("#ucp_login_email_field").value != "" && document.querySelector("#ucp_login_password_field").value != ""){
            document.querySelector("form").submit();
        } else{
            console.log("fields are not filled correctly");
        }
    

    【讨论】:

    • 我在解决方案中更改了一些代码,请检查。
    • 试试 $("form").submit();上面的代码就可以正常工作了。
    • 好的,我可以给你改一下.....谢谢。所以你应该接受我的回答。
    • 请直接在那个网站上试试。它不起作用
    • 它的工作形式是我,我不知道为什么它不适合你!
    【解决方案2】:

    当您在文本框中键入值时,值(用户名、密码)存储在变量中。提交表单时,值取自变量并覆盖文本框中的值(您通过 chrome 控制台分配)。

    因此,除非在文本框中输入,否则您的值无法通过 chrome 控制台提交。

    【讨论】:

    • 我不明白
    • 文本框值在文本框中按键期间存储在变量中。单击登录按钮时,值是从那些变量中获取的,而不是从文本框中获取的。在您的情况下,您没有在文本框中输入任何内容。因此,变量中的值将为空。这就是为什么,它显示错误“用户名不能为空”。因为它没有考虑没有输入就没有输入的文本框值。您不能通过 chrome 控制台分配它。
    猜你喜欢
    • 2018-11-23
    • 1970-01-01
    • 2012-01-08
    • 1970-01-01
    • 2012-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多