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();
}