加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

ASP.Net:将客户端onClick添加到GridView中的HyperlinkField

发布时间:2020-12-15 22:31:59 所属栏目:asp.Net 来源:网络整理
导读:我有一个现有的GridView,其中包含“伙伴名称”字段.它可以按合作伙伴名称排序. 现在我需要更改合作伙伴名称字段,并在某些情况下使其可点击并提醒()某些内容. 现有代码是: asp:GridView ID="gridViewAdjustments" runat="server" AutoGenerateColumns="false
我有一个现有的GridView,其中包含“伙伴名称”字段.它可以按合作伙伴名称排序.
现在我需要更改合作伙伴名称字段,并在某些情况下使其可点击并提醒()某些内容.

现有代码是:

<asp:GridView ID="gridViewAdjustments" runat="server" AutoGenerateColumns="false" AllowSorting="True" OnSorting="gridView_Sorting" OnRowDataBound="OnRowDataBoundAdjustments" EnableViewState="true">
         <asp:BoundField DataField="PartnerName" HeaderText="Name" SortExpression="PartnerName"/>

我添加了专栏:

<asp:hyperlinkfield  datatextfield="PartnerName" SortExpression="PartnerName" headertext="Name" ItemStyle-CssClass="text2"/>

这使我能够控制CSS和排序.但是,我找不到如何添加客户端javascript函数.
我发现添加:

<asp:TemplateField HeaderText="Edit">                                     
<ItemTemplate>
      <a id="lnk" runat="server">Edit</a>

使我能够通过id访问“lnk”并添加到其属性.但是,我失去了排序能力.

在这种情况下,正确的解决方案是什么?
谢谢.

解决方法

我找到的解决方案是以这种方式使用asp:TemplateField,而不会丢失排序功能并使用Eval使用datatextfield:
<asp:TemplateField HeaderText="Name" SortExpression="PartnerName">
<ItemTemplate>
        <a onclick="javascript:alert('ok')" href="http://<%#Eval("PartnerName")%>"><%#Eval("PartnerName")%></a>
</ItemTemplate></asp:TemplateField>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读