将GridView列值传递给Javascript函数 - OnClientClick

w00*_*977 2 javascript vb.net asp.net

我有这样的网格视图:

<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>
Run Code Online (Sandbox Code Playgroud)

JavaScript看起来像这样:

<script type="text/javascript">
        function GetEmailAddress(creuser) {
           //Do something
}
</script>
Run Code Online (Sandbox Code Playgroud)

如何将LabCreUser中的值传递给选择的行到Javasript函数?

我看过这里:在onclientclick中将变量传递给javascript以及其他一些问题.我没有尝试过任何工作.

Enr*_*eta 10

您可以通过这种方式将参数传递给JS函数

OnClientClick=<%# "GetEmailAddress('" + Eval("creUser") + "')" %>
Run Code Online (Sandbox Code Playgroud)

这将成为

OnClientClick="GetEmailAddress('yourValue')"
Run Code Online (Sandbox Code Playgroud)