首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用gridview CommandField打开新选项卡

使用gridview CommandField打开新选项卡
EN

Stack Overflow用户
提问于 2015-08-12 11:00:42
回答 3查看 1.8K关注 0票数 1

我有一个Gridview,如下所述:

代码语言:javascript
复制
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="TrackingNumber" OnSelectedIndexChanged="GridView1_SelectedIndexChanged1"
DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="TrackingNumber" HeaderText="TID" ReadOnly="True" SortExpression="TrackingNumber" /> 
<asp:BoundField DataField="NationalCode" HeaderText="AID" SortExpression="NationalCode" />
<asp:BoundField DataField="ApplicantFName" HeaderText="AFName" SortExpression="ApplicantFName" />
<asp:BoundField DataField="ApplicantSex" HeaderText="ASex" SortExpression="ApplicantSex"/>
<asp:BoundField DataField="dateOfRegister" dataformatstring="{0:yyyy/MM/dd}" HeaderText="RegisterDate" SortExpression="dateOfRegister"/>
<asp:CommandField ButtonType="Image" SelectImageUrl="~/Admin/images/select.png"  ShowSelectButton="True" />
</Columns>
</asp:GridView>

在代码后面,我写了这段代码:

代码语言:javascript
复制
protected void GridView1_SelectedIndexChanged1(object sender, EventArgs e)
{
  Session["TID"] = GridView1.SelectedRow.Cells[0].Text;
  Response.Redirect("../Recruitment/InitPrint.aspx");
}

当用户单击命令字段按钮时,页面重定向到InitPrint.aspx,我的代码做得很好。但我希望InitPrint.aspx在新的选项卡页面中打开,Session["TID"]将在那里读取。

谢谢你的关心。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-08-12 11:29:16

请检查下面的代码。希望它能帮到你

代码语言:javascript
复制
protected void GridView1_SelectedIndexChanged1(object sender, EventArgs e)
{ 
  Session["TID"] = GridView1.SelectedRow.Cells[0].Text;
  ScriptManager.RegisterStartupScript(Page, Page.GetType(), "popup", "window.open('page.aspx','_blank')", true);
}
票数 2
EN

Stack Overflow用户

发布于 2015-08-12 11:07:26

没有直接的方法,你必须使用这样的东西:

代码语言:javascript
复制
protected void GridView1_SelectedIndexChanged1(object sender, EventArgs e)
{
    Session["TID"] = GridView1.SelectedRow.Cells[0].Text;
    ScriptManager.RegisterStartupScript(Page, typeof(Page), "OpenWindow", "window.open("'../Recruitment/InitPrint.aspx','_blank'");",true);
}
票数 1
EN

Stack Overflow用户

发布于 2015-08-12 11:24:24

您可以将目标设置为空白。

代码语言:javascript
复制
Response.Write("<script>window.open('../Recruitment/InitPrint.aspx','_blank');</script>");

并访问该页面中的会话值。

下面的链接将帮助您获得更多的ASP.Net-Response.Redirect-or-Server.Transfer-Open-new-window

具有来自网格视图控件事件的目标的Response.Redirect

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31963303

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档