我使用的是asp.net,我正在使用gridview。我将GridView中的一个字段设置为表示类别名称的HyperLinkField。我从数据库中提取名称和ID,我无法确定它们是什么,因为它们是单独添加的。我希望能够通过查询字符串将更改的CategoryId传递给另一个页面。我怎么能用GridView做到这一点?
答案 0 :(得分:2)
在您的超链接字段中,将DataNavigateUrlFields设置为您的ID列,并将DataNavigateUrlFormatString设置为Url以导航到(其中{0}将被ID替换)
<asp:HyperLinkField
DataNavigateUrlFields="ID"
DataNavigateUrlFormatString="Target.aspx?ID={0}"
DataTextField="Name"
Target="_blank">
</asp:HyperLinkField>
答案 1 :(得分:-1)
您可以使用<asp:TemplateField />
作为列之一而不是<asp:BoundField />
代码示例:
<asp:TemplateField HeaderText="Name">
<ItemTemplate>
<a href="/new_page?categoryId=<%#Container.DataItem("id")"><%#Container.DataItem("name")</a>
</ItemTemplate>
</asp:TemplateField>
可能有一种更简洁的方法,而不是使用锚元素,但你应该明白这一点。