隐藏WebBrowser中由showModalDialog生成的模态窗口
Hide modal window generated by showModalDialog in WebBrowser
我有这个页面:
<body>
<script>
function showModal() {
// do some things here...
var address = 'http://localhost:61948/modal.aspx';
window.showModalDialog(address);
}
</script>
<form id="form1" runat="server">
<div>
<input id="btnModal" type="button" value="button" onclick="showModal();" /></div>
</form>
</body>
然后我有一个WebBrowser点击这个按钮
public Form1()
{
string url = "http://localhost:61948/WebForm1.aspx";
InitializeComponent();
webBrowser1.DocumentCompleted += webBrowser1_DocumentCompleted;
webBrowser1.Navigate(url);
}
void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
webBrowser1.Document.GetElementById("btnModal").InvokeMember("click");
}
问题是我不应该显示模态,但我必须点击按钮。我已经尝试使用newWindow事件来取消事件,但是在这种情况下这个事件没有被触发。真正的应用程序是一个控制台应用程序,我不能显示任何东西,然后我隐藏了浏览器,但模态窗口正在显示给用户。我不能改变服务器端的任何东西。我只需要对用户隐藏这个模态窗口
Try
webBrowser1.Document.InvokeScript("eval", new Object[] { "window.showModalDialog = null;" });
如果你想在其他地方显示对话框,你可以将window.showModalDialog
更改为window.external.showModalDialog
,并在你的对象中实现showModalDialog
方法。
相关文章:
- 点击AngularJS模态窗口捕捉背景事件
- 在angularJS中使用模态窗口时,在控制器之间共享对象数组
- 如何使用jquery关闭模态窗口,通过模拟模态's关闭按钮
- Angularjs - 观察模态窗口从另一个控制器关闭
- 模态窗口yii2中的Ajax验证数据
- Ajax 模态窗口可以访问父窗口 PHP 数据吗?
- 在选择(rails_admin)时更改时在模态窗口中添加新字段
- 在模态窗口上创建 cookie
- 如何在用户离开网页时显示模态窗口
- Magento时事通讯弹出窗口(模态窗口)在每个页面上触发.它应该只在主页上弹出
- 如何在 jquery 中浮动模态窗口
- 创建一个模态窗口以使用 AngularJS 加载数据
- Angular JS将msg广播到多个视图,包括模态窗口
- 模态窗口在电子上消失
- 如何使用 javascript 在模态窗口内重定向
- ExtJS 4.2.1 用于加载指示和模态窗口的不同 CSS 掩码
- 机器人可以单击在 javascript 中制作模态窗口的链接吗?
- 如何在 angularjs 模态窗口中运行 jquery
- Javascript 模态窗口例程每次单击都会执行更多时间
- 模态窗口(弹出窗口)警报在使用 angularJs 的错误字段上显示