nick轩

导航

window.showModalDialog()方法在Chrome下不能使用的解决方法

1、用window.open()替代其弹出窗口

2、用 getBrowserType() 判断当前浏览器是什么浏览器,并作出相应处理。

function getBrowserType() {

var ua = navigator.userAgent.toLowerCase();

if(ua.match(/msie ([\d.]+)/))return 1;

if(ua.match(/firefox\/([\d.]+)/))return 2;

if(ua.match(/chrome\/([\\d.]+)/))return 3;

if(ua.match(/opera.([\d.]+)/))return 4;

if(ua.match(/version\\/([\d.]+).*safari/))return 5;

return 0;

}

3、IE用window.returnValue 向父窗口传递参数;

Chrome用window.opener.returnValue向父窗口传递参数,并且调用 window.opener.document.all.btnGetList.click();局部舒心父窗口。

4、在父窗口定义一个控件<input type="hidden" id="btnGetList" onclick="<%=PostBack()%>" />

5、在父窗口的后台定义PostBack()方法

      protected string PostBack()    

{        

return this.Page.GetPostBackEventReference(this.hidAdd, "getList");    

hidAdd触发下面事件

    protected void btnAdd_Click(object sender, EventArgs e)    

{      

 this.GetList();  

}

posted on 2011-04-16 16:03  nick轩  阅读(5609)  评论(0编辑  收藏  举报