javascript - window.open 之后的代码不会被执行

标签 javascript

我最近开始学习 javascript,我目前正在尝试制作一个小脚本,通过填写用户名/密码字段来自动化登录过程,然后单击“提交”按钮。

我的代码如下:

window.open("");
document.getElementById('ctl00_Username').value = "XXXX";
document.getElementById('ctl00_Password').value="XXXX";
document.getElementById('ctl00_ButtonLogin').click();

如果我运行一次,网站会打开,但不会填充任何文本字段。
如果我运行代码两次(当网站已经打开时)登录成功。

我尝试将“console.log”放在“window.open”之后,但由于某种原因,似乎从未被调用过。

我可能做错了什么?

编辑:删除了不必要的代码。我也不再确定文档对象实际上指向新打开的窗口。对“console.log”和“alert”的调用似乎也没有任何作用。

是否可以从窗口中获取正确的文档对象?
甚至可以使用“window.open”然后访问新的文档对象吗?
帮助将不胜感激!

最佳答案

window.open 调用返回对窗口的引用,您可以使用它来修改窗口。

 win=window.open(...);
 win.document.doYourThing

您可能还需要等到文档准备好(也就是加载)。下面使用jquery
 $(win.document).ready(function() {
     //the document is loaded by here, this is probably where you should do your stuff.
 });

关于javascript - window.open 之后的代码不会被执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18677497/

相关文章:

javascript - 根据属性合并两个数组

javascript - 如何使用 phonegap 按字母顺序排列从 android 设备获取的联系人?

javascript - DOM 的点击事件不起作用,而异步函数正在文档就绪中执行

用于查找基本 URL 的 Javascript 正则表达式

javascript - 具有下划线模板分隔符的 Node 项目在 EJS View 中发生冲突

javascript - 单击提交 <button> 后,访问事件处理程序中存在于 <form> 外部的 <form> 内容

php - Javascript 动态下拉菜单 - 页面重新加载时 react ?

javascript - gulp-express 通知 livereload

javascript - 数量价格折扣 html/java/php

javascript - Select2 下拉列表在带有 struts 标签的 UI 中未正确显示