Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Javascript单击弹出窗口中的按钮_Javascript - Fatal编程技术网

使用Javascript单击弹出窗口中的按钮

使用Javascript单击弹出窗口中的按钮,javascript,Javascript,在我的网站上,我试图制作一个html页面,让JS转到我网站中的另一个页面并单击一个按钮。单击该按钮将创建一个弹出窗口,我想在其中单击另一个按钮。我该怎么做 我知道我可以使用getElementsByName()。单击()来单击按钮,但我不确定如何进入弹出窗口。.click()是否返回弹出窗口的窗口对象 我没有能力更改这些网页 提前感谢。如果在iframe中加载第二页,则可以执行此操作 代码是这样的 var iframe = document.getElementById('secondPageI

在我的网站上,我试图制作一个html页面,让JS转到我网站中的另一个页面并单击一个按钮。单击该按钮将创建一个弹出窗口,我想在其中单击另一个按钮。我该怎么做

我知道我可以使用getElementsByName()。单击()来单击按钮,但我不确定如何进入弹出窗口。.click()是否返回弹出窗口的窗口对象

我没有能力更改这些网页


提前感谢。

如果在iframe中加载第二页,则可以执行此操作

代码是这样的

var iframe = document.getElementById('secondPageIframe');
var innerDoc = iframe.contentDocument || iframe.contentWindow.document;

var firstButton = innerDoc.getElementById('buttonId');
// This will open the modal
if (typeof firstButton.onclick == "function") {
    firstButton.onclick.apply(firstButton);
}

// Just a delay to be sure that the modal has finished with animations
setTimeout(function() {
   var modalButton = innerDoc.getElementById('modalButtonId');
   if (typeof modalButton.onclick == "function") {
      modalButton.onclick.apply(modalButton);
   }
}, 500);

这应该可以完成工作,但您必须在iframe中打开该页面,并且该页面必须位于同一域中,否则这将是跨站点脚本编写的目的。

只需使用selenium…从另一个网页抓取网页是没有意义的。如果弹出窗口是指浏览器中的另一个页面,而不是模式窗口,您需要在此弹出窗口中执行另一个脚本才能访问它。弹出窗口是否也在您的站点上?您可以使用URL参数或执行POST请求从第一页获取信息。很遗憾,我没有能力更改URL或处理POST。@利亚姆我知道这没有意义,但有必要将一页转到另一页,您可以创建iframe并在那里打开第二页。您不需要更改具有模式的页面,只需更改运行脚本的页面即可。