【问题标题】:How to pass value to web page form after using window.open使用 window.open 后如何将值传递给网页表单
【发布时间】:2026-01-20 18:10:01
【问题描述】:

我正在尝试登录一个拍卖网站,其最终目标是在特定时间出价,而无需亲自坐在电脑前。

如何将值传递给网页表单并登录网站?

点击提交后登录页面加载,但是来自exampleInputEmail1和exampleInputPassword1的输入没有传递到网页。

我认为这可能与 onload 有关,但到目前为止还没有运气。

    <!DOCTYPE html>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
<script>
  function openGoodWill() {

    var newWindow;
    newWindow = window.open('https://www.shopgoodwill.com/SignIn');
    newWindow.onload = function(){
    window.document.getElementById('Username').value = 'exampleInputEmail1';
    window.document.getElementById('Password').value = 'exampleInputPassword1';
    window.document.getElementById('login-submit').dispatchEvent(new MouseEvent("click"));
}
  }
</script>
<body>
<form>
  <div class="form-group">
    <label for="exampleInputEmail1">Email address</label>
    <input type="text" class="form-control" id="exampleInputEmail1" aria-describedby="emailHelp" placeholder="Enter email">
    <small id="emailHelp" class="form-text text-muted">We'll never share your email with anyone else.</small>
  </div>
  <div class="form-group">
    <label for="exampleInputPassword1">Password</label>
    <input type="password" class="form-control" id="exampleInputPassword1" placeholder="Password">
  </div>
  <button onclick="openGoodWill()" type="submit" class="btn btn-primary">Submit</button>
</form>
</body>

点击提交后登录页面加载,但是来自exampleInputEmail1和exampleInputPassword1的输入没有传递到网页。

【问题讨论】:

  • 您可以尝试查找该网站的登录API。尝试直接调用登录API并重新加载页面。

标签: javascript forms function onload


【解决方案1】:

使用window.open从javascript传递,

对于非敏感信息

获取 您可以使用GETmethod 通过 URL 传输数据。

window.open('your_site?data1='+data1+'&data2='+data2,'_SELF');

Cookies

您可以将数据保存在cookie中,然后重定向后,您可以再次从cookie中读取。

本地存储

像 cookie 一样,您可以使用 Javascript 将数据存储在 Local Storage 中。然后你可以从重定向的网站阅读。

例子:

localStorage.setItem('userId','10036656');

阅读

var userId = localStorage.getItem('userId');

但在你的情况下

处理登录详细信息等敏感信息。请直接与服务器处理。

你可以使用Form Submit

请使用 Javascript 使用 AJAX RequestAJAX Tutorial

【讨论】:

    最近更新 更多