1、 在web编程过程中,经常会遇到一些页面需要弹出窗口,但是在服务器端用window.open弹出的窗口会被IE阻止掉,
showModalDialog
弹出的窗口有时并不能满足我们需要,我们需要弹出新的浏览器窗口。
showModalDialog
弹出的窗口有时并不能满足我们需要,我们需要弹出新的浏览器窗口。
2、
为什么我们编写的弹出窗口会被
IE
阻止呢,原来
IE
会自动判断弹出窗口的状态,它会阻止自动弹出的窗口,而通过我们用鼠标点击弹出的窗口,它是不会阻止的。这里就有一个问题,有人说:我的程序是写在服务器按钮里的,也是通过鼠标点击弹出的呀!其实只有在加载页面后,我们点击到弹出这段时间页面没有被重新加载的情况下,弹出的窗口才不会被阻止!这也就是说,写在服务器控件的回传事件里的
window.open
都会被阻止。
为什么我们编写的弹出窗口会被
IE
阻止呢,原来
IE
会自动判断弹出窗口的状态,它会阻止自动弹出的窗口,而通过我们用鼠标点击弹出的窗口,它是不会阻止的。这里就有一个问题,有人说:我的程序是写在服务器按钮里的,也是通过鼠标点击弹出的呀!其实只有在加载页面后,我们点击到弹出这段时间页面没有被重新加载的情况下,弹出的窗口才不会被阻止!这也就是说,写在服务器控件的回传事件里的
window.open
都会被阻止。
3、
问题搞清楚了事情也就好办了,我们可以用
ajax
来与服务器端通信,在客户端用
javascript
来编写事件处理程序,这样在客户端的就不会因为回传事件而重新加载页面,这样弹出窗口就不会被阻止了!
问题搞清楚了事情也就好办了,我们可以用
ajax
来与服务器端通信,在客户端用
javascript
来编写事件处理程序,这样在客户端的就不会因为回传事件而重新加载页面,这样弹出窗口就不会被阻止了!
举个例子:
default.aspx
<!
DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”
>
<
html
xmlns
=”http://www.w3.org/1999/xhtml”
>
<
head
runat
=”server”
>
<
title
>
无标题页
</
title
>
</
head
>
<
script
language
=”javascript”
>
…
function getAjaxXml()
…{
var xml = new ActiveXObject(“Microsoft.XMLHTTP“);
var str=“flag=888“;
xml.open(“GET“,“showxml.aspx?“+str,false);
xml.send();
return xml.responseText;
}
function imgclick()
…{
var value=getAjaxXml();
window.open (“http://www.a8.com/?xml=“+value );
}
</
script
>
<
body
>
<
form
id
=”form1″
runat
=”server”
>
<
div
>
<
img
src
= “http://img.a8.com/em/mlblog02.gif”
style
=” cursor :hand”
onclick
=”imgclick()”
/>
</
div
>
</
form
>
</
body
>
</
html
>
showxml.aspx.cs
using
System;
using
System.Data;
using
System.Configuration;
using
System.Collections;
using
System.Web;
using
System.Web.Security;
using
System.Web.UI;
using
System.Web.UI.WebControls;
using
System.Web.UI.WebControls.WebParts;
using
System.Web.UI.HtmlControls;
namespace
webtest
…
{
public partial class showxml : System.Web.UI.Page
…{
protected void Page_Load(object sender, EventArgs e)
…{
Response.Write(“xml“+Request [“flag“]);
}
}
}
今天的文章如何编写弹出窗口不被ie阻止的程序_取消激活弹出框阻止程序分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/59035.html