0

我在 vb.net 中创建了一个包含 2 个字段的表,如下所示 -

            Do While SqlDR.Read()
                TR = New HtmlTableRow

                TD = New HtmlTableCell
                TD.InnerHtml = SqlDR("name")
                TR.Cells.Add(TD)

                TB.Rows.Add(TR)
            Loop
        SqlDR.Close()

数据看起来像这样 -

姓名
几米
乔纳森
保利

我如何在名称单元格上放置超链接,所以当我单击特定名称时,它将转到具有该名称的下一页?

4

2 回答 2

0

这与 asp.net 的工作方式相反。您想重新考虑所有内容并在您的标记中做更多类似的事情:

<asp:SqlDataSource Id="somedatasource" runat="serveR" ConnectionString="..." SelectCommand="..." />

<table><tr><th>Names</th></tr>
<asp:Repeater id="somerepeater" runat="server" DataSourceID="somedatasource">
    <ItemTemplate><tr><td><a href="page?name=Eval("name")">Eval("name")</a></td></tr></ItemTemplate>
</asp:Repeater>
</table>
于 2010-02-03T17:42:35.153 回答
0

您可以只使用 a<asp:HyperLink>作为您的超链接,但使用超链接作为回发往往是一种不好的形式。

您可能应该使用 LinkBut​​ton 的 CommandName 和 CommandArgument 属性。命令名称是您想要的任何名称,命令参数是该特定行的 id。

然后,您可以创建一个 Command 事件处理程序以重定向到相应的页面。

请参阅:http: //msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.linkbutton.commandname.aspx

或者您可以将超链接的 NavigateURL 设置为:

NavigateURL = "profiles.aspx?name_id=" & l.ID
于 2010-02-03T16:51:25.990 回答