0

HTML ソース コードからクエリ文字列を渡そうとしています。リンクは ListView の ItemTemplate 内にあります。

<a href='<%# "Photos.aspx?AlbumID="+Eval("AlbumID") "&address=" + Request.QueryString["Id"].ToString() %>'> 

このコードを試しましたが、うまくいきませんでした。複数のエラーがあります。

4

4 に答える 4

1

私はそれがちょうどあるべきだと思いますRequest["Id"]

ただし、それは型のオブジェクトを返し、文字列の演算子でobject使用すると、メソッドを呼び出す+必要はありません。ToString()連結時に自動的に呼び出されます。

于 2013-02-07T10:19:06.297 に答える
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>
于 2013-02-07T10:21:54.830 に答える
0

2つの間違いがあると思います。1 つは、Eval の後に 1 つの + オペランドを忘れていることです。もう 1 つは、eval がオブジェクトを返し、このタイプのインライン コードを配置してもメソッド ToString() が自動的に呼び出されないため、明示的に設定する必要があることです: Eval(" AlbumID").ToString().

お役に立てれば。

<a href='<%# "Photos.aspx?AlbumID="+ Eval("AlbumID").ToString() + "&address=" + Request.QueryString["Id"].ToString() %>'>
于 2013-02-07T17:23:43.643 に答える
0

値の連結にエラーがあると思います...以下のようにしてみてください...

それはあなたを助けるかもしれません...

 <a href='Photos.aspx?AlbumID=<%# Eval("AlbumID") + "&address=" + Request.QueryString["Id"].ToString() %>'> 
于 2013-02-07T10:32:21.617 に答える