关闭网页上的对话框 window
Close dialog window on webpage
我需要在其他人的网页中触发一些操作。到目前为止我有这个代码:
IHTMLElementCollection DeleteCollection =
(IHTMLElementCollection)myDoc.getElementsByTagName("a");
foreach (HTMLAnchorElement buttonDelete in DeleteCollection){
if (buttonDelete.title != null && buttonDelete.title.StartsWith("Delete")){
buttonDelete.click();
// problem goes here
myDoc.activeElement.click();
SendKeys.Send("{ENTER}");
}
}
弹出此对话框:
我尝试了 myDoc.activeElement.click();
和 SendKeys.Send("{ENTER}");
但是对话框似乎超出了页面,所以我不知道如何触发 OK
按钮。如何关闭 window?
您不能以编程方式关闭浏览器对话框。您可以做的是劫持浏览器弹出行为。这可能对你有用:
window.confirm=function(){ return true; };
window.alert=function(){ return true; };
window.prompt=function(){ return "textOfMyChoice"; };
基本上,在单击您的按钮之前插入 javascript。如果您想稍后恢复弹出行为,请将它们存储在另一个全局变量中。
我想,您示例中的任何锚标记都有一个 javascript 本机确认对话框。
您不要以编程方式关闭此对话框。
但是您可以为所有锚元素更改 javascript,并用您自定义的 jQuery 对话框替换确认对话框。这样您就可以完全控制此对话框:关闭、隐藏、设置超时等。
转换
<a href="..." onclick="return confirm('are you sure?')" ... >...</a>
至
<a href="..." onclick="return openMyjQueryDialog('are you sure?')" ... >...</a>
因此,用户可以继续正常行为,您的脚本可以完全控制所有对话框元素。
我需要在其他人的网页中触发一些操作。到目前为止我有这个代码:
IHTMLElementCollection DeleteCollection =
(IHTMLElementCollection)myDoc.getElementsByTagName("a");
foreach (HTMLAnchorElement buttonDelete in DeleteCollection){
if (buttonDelete.title != null && buttonDelete.title.StartsWith("Delete")){
buttonDelete.click();
// problem goes here
myDoc.activeElement.click();
SendKeys.Send("{ENTER}");
}
}
弹出此对话框:
我尝试了 myDoc.activeElement.click();
和 SendKeys.Send("{ENTER}");
但是对话框似乎超出了页面,所以我不知道如何触发 OK
按钮。如何关闭 window?
您不能以编程方式关闭浏览器对话框。您可以做的是劫持浏览器弹出行为。这可能对你有用:
window.confirm=function(){ return true; };
window.alert=function(){ return true; };
window.prompt=function(){ return "textOfMyChoice"; };
基本上,在单击您的按钮之前插入 javascript。如果您想稍后恢复弹出行为,请将它们存储在另一个全局变量中。
我想,您示例中的任何锚标记都有一个 javascript 本机确认对话框。 您不要以编程方式关闭此对话框。
但是您可以为所有锚元素更改 javascript,并用您自定义的 jQuery 对话框替换确认对话框。这样您就可以完全控制此对话框:关闭、隐藏、设置超时等。
转换
<a href="..." onclick="return confirm('are you sure?')" ... >...</a>
至
<a href="..." onclick="return openMyjQueryDialog('are you sure?')" ... >...</a>
因此,用户可以继续正常行为,您的脚本可以完全控制所有对话框元素。