asp.net中Response.Redirect方法在新窗口中弹出方法
2009-10-30 11:01
429 查看
一、目的说明:
页面中有一个Buttn,名称为btnNew。它将弹出一个新增内容的页面。
页面中有一个gridview用于显示数据。gridview的最后两列是“详细”和“删除”。
现在要求btnNew弹出新的窗口,用于新增数据。
GidView中的“详细”列弹出新的窗口,用于查看数据。
GidView中的“删除”列用于删除当前行的数据。
现在问题来了。
问题1、用Response.Redirect的方法无法在打开新窗口。
问题2、如果使用form中的target='_blank'属性,当单击GridView中的删除时,会出弹出新的窗口。
问题3、如果将“删除”变成<a href='xxx.aspx' target='_blank'>删除</a> 的形式。无法调用后代代码,除非使用Ajax。
问题4、如要使用js的window.open()方法。当使用“window.opener.location.href=window.opener.location.href” 刷新父窗口时,不能刷新gridview中的数据。 当使用“window.opener.location.reload();” 刷新父窗口时,每次刷新都弹出让从新发送消息的对话框,让点确定重发消息来刷新页面(后一种方法是网友测试的)。
二、解决方法为:
1、当单击BtnNew方法时,让form.target='_blank',这样所有链接都会在新窗口中打开。
2、当单击删除时,先让form.target='_self'。这样就不会弹出新的窗口。
三、代码如下:
1、单击btnNew前让form.target='_blank'。此方法放在load事件中。
protected void Page_Load(object sender, EventArgs e)
{
try
{
if (!IsPostBack)
{
btnNew.Attributes.Add("onclick", "form.target='_blank'");
}
}
catch (Exception error)
{
}
}
2、在删除前让先让form.target='_self'代码:此事件放在gridview的RowDataBound事件中。代码:
protected void gvwList_RowDataBound(object sender, GridViewRowEventArgs e)
{
//隐藏Key
e.Row.Cells[0].Visible = false;
//不显示弹出窗口,并删除提示。
e.Row.Cells[e.Row.Cells.Count - 1].Attributes["onclick"] = "document.forms[0].target='_self'; return confirm('确定删除吗?');";
}
页面中有一个Buttn,名称为btnNew。它将弹出一个新增内容的页面。
页面中有一个gridview用于显示数据。gridview的最后两列是“详细”和“删除”。
现在要求btnNew弹出新的窗口,用于新增数据。
GidView中的“详细”列弹出新的窗口,用于查看数据。
GidView中的“删除”列用于删除当前行的数据。
现在问题来了。
问题1、用Response.Redirect的方法无法在打开新窗口。
问题2、如果使用form中的target='_blank'属性,当单击GridView中的删除时,会出弹出新的窗口。
问题3、如果将“删除”变成<a href='xxx.aspx' target='_blank'>删除</a> 的形式。无法调用后代代码,除非使用Ajax。
问题4、如要使用js的window.open()方法。当使用“window.opener.location.href=window.opener.location.href” 刷新父窗口时,不能刷新gridview中的数据。 当使用“window.opener.location.reload();” 刷新父窗口时,每次刷新都弹出让从新发送消息的对话框,让点确定重发消息来刷新页面(后一种方法是网友测试的)。
二、解决方法为:
1、当单击BtnNew方法时,让form.target='_blank',这样所有链接都会在新窗口中打开。
2、当单击删除时,先让form.target='_self'。这样就不会弹出新的窗口。
三、代码如下:
1、单击btnNew前让form.target='_blank'。此方法放在load事件中。
protected void Page_Load(object sender, EventArgs e)
{
try
{
if (!IsPostBack)
{
btnNew.Attributes.Add("onclick", "form.target='_blank'");
}
}
catch (Exception error)
{
}
}
2、在删除前让先让form.target='_self'代码:此事件放在gridview的RowDataBound事件中。代码:
protected void gvwList_RowDataBound(object sender, GridViewRowEventArgs e)
{
//隐藏Key
e.Row.Cells[0].Visible = false;
//不显示弹出窗口,并删除提示。
e.Row.Cells[e.Row.Cells.Count - 1].Attributes["onclick"] = "document.forms[0].target='_self'; return confirm('确定删除吗?');";
}
相关文章推荐
- asp.net Response.Redirect跳出框架与打开窗口方法
- asp.net使用response.redirect后无法弹出对话框解决办法
- ASP.NET弹出新窗口的方法【显示提示信息】
- Asp.net实现弹出窗口提示,又防止刷新被重复提交的方法
- Asp.net实现弹出窗口提示,又防止刷新被重复提交的方法
- IE无法屏蔽的弹出页面的方法!Response.Redirect 打开新窗口的两种方法
- 在Asp.net 中弹出对话框是(Response.write不是好方法)
- Asp.net中 内置对象Response的Clear、Flush、End、Redirect和方法中的return解析
- asp.net response.redirect 打开新窗口(转载)
- Asp.net实现弹出窗口提示,又防止刷新被重复提交的方法
- [原创]ASP.NET中Response.Redirect()方法深度剖析
- Asp.net实现弹出窗口提示,又防止刷新被重复提交的方法
- ASP.NET中Response.Redirect()方法深度剖析
- asp.net弹出新窗口的4个方法
- Asp.net实现弹出窗口提示,又防止刷新被重复提交的方法
- 关于在ASP.NET控件Response弹出窗口的问题
- 关于ASP.NET MVC中Response.Redirect和RedirectToAction的BUG (跳转后继续执行后面代码而不结束进程)以及处理方法
- ASP.NET中Response.Redirect()方法深度剖析[转]
- 一个通过asp.net弹出窗口不被IE阻止的方法
- ASP.NET 关于Response.Redirect()方法的使用