我在DataGrid中有以下标记:
<itemtemplate>
<a href='~/File.aspx?item=<%# DataBinder.Eval(Container.DataItem, "ItemID").ToString() %>'
runat='server'><%# DataBinder.Eval(Container.DataItem, "Title").ToString() %>
</a>
</itemtemplate>
但它呈现以下HTML:
&lt; a href =“../ File.aspx?item =&lt;%#DataBinder.Eval(Container.DataItem,”ItemID“)。ToString()%&gt;”&gt; 我的链接 &LT; / A&GT;
我做错了什么?
答案 0 :(得分:3)
试试这个。
<asp:TemplateColumn>
<ItemTemplate>
<a id="A1" runat='server' href='<%# "~/File.aspx?item=" + Eval("ID")%>'>
<%# Eval("Job") %>
</a>
</ItemTemplate>
</asp:TemplateColumn>
答案 1 :(得分:2)
你必须追加它
<a href='~/File.aspx?item=' + <%# DataBinder.Eval(Container.DataItem, "ItemID").ToString() %>
否则,如果您使用超链接,那将非常容易。 e.g。
<ItemTemplate>
<asp:HyperLink ID="HyperLink1" runat="server"
NavigateUrl='<%#Eval("ItemID", "~/File.aspx?item={0}")%>'
Text='<%# DataBinder.Eval(Container.DataItem, "Title").ToString() %>'></asp:HyperLink>
</ItemTemplate>