I created a javascript function to get the selected row from a gridview and it is working fine when I use BoundField
DataField
, but when I use label
inside the ItemTemplate
in the gridview it returns a value but with html codes.
for example when I use BoundField
DataField
I get this:
user name
and when I use label inside ItemTemplate
I get this:
<span id="gvCustomers_Label4_6">user name</span>
here is my code:
<script type ="text/javascript" >
function GetSelectedRow(UserLink) {
var row = UserLink.parentNode.parentNode;
var Userid = row.cells[1].innerHTML;
alert(Userid);
return false;
}
</script>
here is the gridview code:
<asp:GridView ID="gvCustomers" runat="server" AutoGenerateColumns="false" AllowPaging="true" OnPageIndexChanging="OnPaging">
<Columns>
<asp:TemplateField HeaderText="user name">
<ItemTemplate>
<asp:Label ID="Label4" Text='<%# Eval("user_name") %>' runat ="server"/>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:Button ID="ButtonSearch" runat="server" ClientIDMode="Static" Text='select' OnClientClick = "return GetSelectedRow(this)" CommandArgument ='<%# Bind("user_name") %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>