在asp.net中打开URL时出错

时间:2011-03-04 18:22:27

标签: jquery asp.net vb.net colorbox querystringparameter

我有以下asp:在ColorBox中打开的HyperLink:

<asp:HyperLink id="HyperLink2" runat="server" Text="Delete" class="example7" ToolTip="Delete this Album" NavigateUrl='<%# "delete_album_confirm.aspx?AlbumName=" & Eval("album_name") & "&PhotoFilename=" & Eval("photo_file_name") & "&AlbumID=" & Eval("album_id")  %>'></asp:HyperLink>

如果Eval("album_name")没有空格,上述工作正常。问题是当我有空格时,colorBox无法打开。例如:

delete_album_confirm.aspx?AlbumName=testing album cover&PhotoFilename=resized_CIMG1426.jpg&AlbumID=41

任何人都可以告诉我如何使用空格并仍然可以使用吗?

非常感谢任何帮助。

由于

2 个答案:

答案 0 :(得分:3)

使用编码的等效网址%20替换您的空格。 e.g。

  

delete_album_confirm.aspx?ALBUMNAME =测试%20album   覆盖&安培; PhotoFilename = resized_CIMG1426.jpg&安培; ALBUMID = 41

答案 1 :(得分:3)

问题可能是URL中不允许使用空格,因此您需要使用Url Encoding。你应该能够做到这一点:

<asp:HyperLink id="HyperLink2" runat="server" Text="Delete" class="example7" ToolTip="Delete this Album" NavigateUrl='<%# HttpUtility.UrlEncode("delete_album_confirm.aspx?AlbumName=" & Eval("album_name") & "&PhotoFilename=" & Eval("photo_file_name") & "&AlbumID=" & Eval("album_id"))  %>'></asp:HyperLink>