I have a grid view like this:
<asp:SqlDataSource ID="SqlPersistentOffenders" runat="server"></asp:SqlDataSource> <asp:GridView ID="GVPersistentOffenders" runat="server" DataSourceID="SqlPersistentOffenders" AllowPaging="true" AutoGenerateColumns="false"> <Columns> <asp:TemplateField HeaderText="PersonID" Visible="false"> <ItemTemplate> <asp:Label ID="LabCreUser" runat="server" Text='<%# Bind("creUser")%>'></asp:Label> </ItemTemplate> </asp:TemplateField> <asp:TemplateField> <ItemTemplate> <asp:Button ID="ButtonSendEmail" runat="server" CommandName="SendEmail" CommandArgument="<%# CType(Container,GridViewRow).RowIndex %>" Text="Send Email" OnClientClick="GetEmailAddress()"/> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView>
The JavaScript looks like this:
<script type="text/javascript"> function GetEmailAddress(creuser) { //Do something } </script>
How can I pass the value in LabCreUser for the row selected to the Javasript function?
I have looked here: Passing variables to javascript in onclientclick and also a few other questions. Nothing I have tried has worked.
Advertisement
Answer
You can pass the parameter to the JS function this way
OnClientClick=<%# "GetEmailAddress('" + Eval("creUser") + "')" %>
this will became in
OnClientClick="GetEmailAddress('yourValue')"