0

我有和 oBjectDataSource,它为我的网格视图获取我的信息。

它完美地显示了所有信息,自动生成:

<asp:BoundField DataField="Name" ItemStyle-Width="250px" HeaderText="Name" SortExpression="Name">
            <ItemStyle Width="250px"></ItemStyle>
        </asp:BoundField>

但我想在navigateURL中有一个超链接,字段“名称”作为文本,字段“用户ID”作为参数:

 <asp:TemplateField>
            <ItemTemplate>
                <asp:HyperLink ID="HyperLink2" NavigateUrl="~/Test.asp?id='<%# Eval("userID") %>'" runat="server"><%# Eval("Name") %></asp:HyperLink>
            </ItemTemplate>
        </asp:TemplateField>

我这里有一个错误...

怎么了?

4

4 回答 4

2

尝试这个:

<asp:HyperLink ID="HyperLink2" runat="server" NavigateUrl='<%# "~/Test.asp?id="+Eval("userID") %>' Text='<%# Eval("Name") %>'></asp:HyperLink>
于 2013-09-05T22:33:06.370 回答
1

您也可以通过这种方式实现它 - 更简单:

<asp:HyperlinkField DataTextField="Name"
        DataNavigateUrlFormatString="~/Test.asp?id={0}"      
        DataNavigateUrlFields="userID"  
        />
于 2013-09-05T22:46:12.487 回答
0

尝试这个。似乎问题在于在 Eval(“userID”) 中使用双引号与在 NavigateUrl 中打开双引号冲突

<asp:HyperLink ID="HyperLink2" NavigateUrl='~/Test.asp?id=<%# Eval("userID") %>' runat="server"><%# Eval("Name") %></asp:HyperLink>
于 2013-09-06T12:29:47.427 回答
0

在您的网格视图中添加此字段

在此示例中,Id = ContentId

<asp:HyperLinkField DataNavigateUrlFields="ContentId" DataNavigateUrlFormatString="EditContent.aspx?ContentId={0}" Text="Edit" HeaderText="Edit" />
于 2014-03-23T14:40:44.527 回答