i have a link button which is inside the grid
i am calling a javascript on the link button but geeting an error as
protected void gvReport_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
//identifying the control in gridview
LinkButton lnkbtnresult = (LinkButton)e.Row.FindControl("lnkDate");
//raising javascript confirmationbox whenver user clicks on link button
lnkbtnresult.Attributes.Add("onClick", "javascript:setFunc()");
}
if (e.Row.RowType == DataControlRowType.Header)
{
GridView HeaderGrid = (GridView)sender;
GridViewRow HeaderGridRow = new GridViewRow(0, 0, DataControlRowType.Header, DataControlRowState.Insert);
TableCell HeaderCell = new TableCell();
HeaderCell.Text = "<b></b>";
HeaderCell.ColumnSpan = 1;
HeaderCell.BorderColor = System.Drawing.Color.Black;
HeaderGridRow.Cells.Add(HeaderCell);
TableCell HeaderCell1 = new TableCell();
HeaderCell1.Text = "<b>Capital Listed</b>";
HeaderCell1.ColumnSpan = 4;
HeaderCell1.BorderColor = System.Drawing.Color.Black;
HeaderGridRow.Cells.Add(HeaderCell1);
gvReport.Controls[0].Controls.AddAt(0, HeaderGridRow);
}
}
and my
function is
function setFunc() {
var lbl1 = document.getElementById("ctl00_ContentPlaceHolder1_lbl_year");
lbl1.focus();
alert("Hello ");
}
and aspx page
<asp:GridView ID="gvReport" width="100%"
runat="server" CellPadding="4" CellSpacing="1" GridLines="None"
AutoGenerateColumns="False" OnRowCommand="gvReport_RowCommand" CssClass="mGrid" PagerStyle-CssClass="pgr" OnRowDataBound="gvReport_RowDataBound" >
<HeaderStyle CssClass="TTHeader"/>
<Columns>
<asp:TemplateField HeaderText="Year" ItemStyle-CssClass="TTRow" ControlStyle-CssClass="tablebluelink" ControlStyle-Width="55px">
<ItemTemplate >
<asp:HiddenField ID="HiddenField1" runat="server" Value='<%# Eval("YR") %>'/>
<asp:LinkButton ID="Linkbtn" runat="server" Text='<%# Eval("Year") %>' CommandName="lnkDate" ></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>