Кнопка ссылки на главную страницу не работает должным образом
Привет,
Моя проблема в том, что у меня есть кнопка ссылки(lnk_logout) на главной странице.На странице содержимого у меня есть еще одна кнопка ссылки (LinkButton1)в поле шаблона gridview. Теперь я хочу открыть новое окно на linkbutton1 click. Я использую Javascript, и он работает нормально. Но после этого, когда я нажимаю на кнопку lnk_logout(master page link button), она также открывает новое окно. ниже приведен мой исходный код и cs-код.
Заранее спасибо.
Что я уже пробовал:
Hi All, My problem is, I have a link button(lnk_logout) on master page.In content page i have another link button (LinkButton1) in gridview template field. Now I want to open a new window on linkbutton1 click. I am using Javascript and its working fine. But after that when i click on lnk_logout(master page link button) it also open new window. below is my source and cs code. Source code of master page: <%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site.master.cs" Inherits="openNewWindow.Site" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <asp:ContentPlaceHolder ID="head" runat="server"> </asp:ContentPlaceHolder> </head> <body> <form id="form1" runat="server"> <div> <div style="background-color: red; width: 100%; height: 100px;"> <h2>Testing</h2> <asp:LinkButton ID="LinkButton1" runat="server" OnClick="LinkButton1_Click">Logout</asp:LinkButton> </div> <div> </div> <div> <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server"> </asp:ContentPlaceHolder> </div> </div> </form> </body> cs code of master page protected void LinkButton1_Click(object sender, EventArgs e) { Session.Abandon(); Session.RemoveAll(); Response.Redirect("logout.aspx"); } Source Code of Content Page <%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="index.aspx.cs" Inherits="openNewWindow.index" %> <asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server"> <script type="text/javascript"> function SetTarget() { document.forms[0].target = "_blank"; } </script> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server"> <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager> <asp:UpdatePanel ID="UpdatePanel1" runat="server"> <ContentTemplate> <asp:Button ID="btn_fillgrid" runat="server" Text="Fill Grid" OnClick="btn_fillgrid_Click" /> <br /> <br /> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" OnRowDataBound="GridView1_RowDataBound"> <Columns> <asp:TemplateField HeaderText="Title"> <ItemTemplate> <asp:LinkButton ID="LinkButton1" runat="server" Text='<%# Eval("title") %>' OnClientClick="SetTarget();" OnClick="LinkButton1_Click"></asp:LinkButton> </ItemTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="Image"> <ItemTemplate> <asp:Label ID="Label1" runat="server" Text='<%# Eval("image") %>'></asp:Label> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> </ContentTemplate> <Triggers> <asp:PostBackTrigger ControlID="btn_fillgrid" /> </Triggers> </asp:UpdatePanel> <br /> </asp:Content> CS Code of Content Page protected void LinkButton1_Click(object sender, EventArgs e) { try { LinkButton btnSelect = (LinkButton)sender; GridViewRow Grow = (GridViewRow)btnSelect.NamingContainer; Label lblDocumentName = (Label)Grow.FindControl("Label1"); Response.Redirect("home.aspx?image=" + lblDocumentName.Text); } catch(Exception ex) { Response.Write(ex.Message.ToString()); } } private void FillGrid() { try { DataRow dr; DataTable dt = new DataTable(); dt.Columns.Add("title"); dt.Columns.Add("image"); dr = dt.NewRow(); dr["title"] = "Page1"; dr["image"] = "Page1"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["title"] = "Page2"; dr["image"] = "Page2"; dt.Rows.Add(dr); GridView1.DataSource = dt; GridView1.DataBind(); GridView2.DataSource = dt; GridView2.DataBind(); } catch(Exception ex) { Response.Write(ex.Message.ToString()); } } protected void btn_fillgrid_Click(object sender, EventArgs e) { FillGrid(); } protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) { try { if(e.Row.RowType == DataControlRowType.DataRow ) { Control lnkButton = e.Row.FindControl("LinkButton1"); ScriptManager mgr = ScriptManager.GetCurrent(this.Page); mgr.RegisterPostBackControl(lnkButton); } } catch(Exception ex) { Response.Write(ex.Message.ToString()); } }
204.sharma
Решенный...