我正在尝试从html源代码传递查询字符串,该链接位于ListView的ItemTemplate中
<a href='<%# "Photos.aspx?AlbumID="+Eval("AlbumID") "&address=" + Request.QueryString["Id"].ToString() %>'>
我尝试了这段代码,但它没有用。有多个错误。
答案 0 :(得分:1)
我认为它应该只是Request["Id"]
。
但是,它返回类型为object
的对象,当与+
运算符一起使用时,不需要调用ToString()
方法。它在串联期间自动调用。
答案 1 :(得分:1)
你的Eval()和a标签上的runat =“server”之后缺少一个+。另外,我更喜欢asp:HyperLink而不是正常的数据绑定标签:
<asp:Listview runat="server" ID="TestLV">
<ItemTemplate>
<asp:HyperLink runat="server" ID="TestHL" NavigateUrl='<%# "Photos.aspx?AlbumID=" + Eval("AlbumID") + "&address=" + Request.QueryString["Id"] %>' ></asp:HyperLink>
</ItemTemplate>
</asp:Listview>
答案 2 :(得分:0)
我认为您在连接值时遇到错误...您可以尝试以下方式...
可能会帮助你...
<a href='Photos.aspx?AlbumID=<%# Eval("AlbumID") + "&address=" + Request.QueryString["Id"].ToString() %>'>
答案 3 :(得分:0)
我认为有两个错误。一个是你在Eval之后忘记了一个+操作数,另一个是eval返回一个对象并且这种类型的内联代码不会自动调用ToString()方法,所以你必须明确地设置它:Eval(“ ALBUMID“)。的ToString()。
希望这有帮助。
<a href='<%# "Photos.aspx?AlbumID="+ Eval("AlbumID").ToString() + "&address=" + Request.QueryString["Id"].ToString() %>'>