我有一个这样的网格视图:
<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>
JavaScript看起来像这样:
<script type="text/javascript">
function GetEmailAddress(creuser) {
//Do something
}
</script>
如何将LabCreUser中的值传递给选定的Javasript函数?
我看过这里:Passing variables to javascript in onclientclick以及其他一些问题。我没有尝试过任何工作。
答案 0 :(得分:8)
您可以通过这种方式将参数传递给JS函数
OnClientClick=<%# "GetEmailAddress('" + Eval("creUser") + "')" %>
这将成为
OnClientClick="GetEmailAddress('yourValue')"
答案 1 :(得分:1)
您只需使用html按钮替换<asp:button>
,然后使用onclick
调用您的javascript函数,如果您需要服务器端函数,请添加runat="server"
希望这会有所帮助