我可以不编码就使用 Response.Redirect 吗?
Can I use Response.Redirect without encoding?
我想通过c#中的resonse.redirect
函数实现URL或网络驱动器(N:\ESSBP1-Office\Imagenes\Check list.xlsx)
描述的文件可以通过浏览器打开。
但是: 这只适用于路径不包含 space.
的情况
如何避免编码?如果我在 InternetExplorer 中键入相同的路径,地址 - space - 会被正确解析并打开文件。
我没能避免使用 response.redirect
函数进行编码。 Server.UrlEncode()
也没有这样做,因为它只是添加了另一个不需要的编码,而我希望 TextBox/Label 的确切内容是传递给浏览器的 URL-bar 的字符串,然后通过按回车键 - 这应该通过代码完成。
我终于实现了,按照@Richard Housham 的建议使用 Javascript:
加价:
<asp:TextBox id="TB_ExternalLink" runat="server"/>
<asp:LINKButton ID="LB_Open" runat="server" OnClick="OpenLink">Open Link</asp:LINKButton>
<input type="hidden" runat="server" id="hiddenExternalFile"/>
代码:
protected void OpenLink(object sender, EventArgs e)
{
string url = TB_ExternalLink.Text.Replace(@"\", @"\");
hiddenExternalFile.Value = url;
Page.ClientScript.RegisterStartupScript(this.GetType(), "CallMyFunction", "windowOpen()", true);
}
Javascript:
function windowOpen() {
Window = window.open(document.getElementById('hiddenExternalFile').value, "_blank");
}
在新选项卡中打开以这些格式在文本框中键入的任何 link:
http://www.url.com
\corp.root.int\INT-Host$\USR03\XXX\W10\Desktop\Kaizen MRO\RMA_Part.png
N:\ESSBP1-Office\Imagenes\Check list.xlsx
不考虑空格或特殊 ASCI 字符
我想通过c#中的resonse.redirect
函数实现URL或网络驱动器(N:\ESSBP1-Office\Imagenes\Check list.xlsx)
描述的文件可以通过浏览器打开。
但是: 这只适用于路径不包含 space.
如何避免编码?如果我在 InternetExplorer 中键入相同的路径,地址 - space - 会被正确解析并打开文件。
我没能避免使用 response.redirect
函数进行编码。 Server.UrlEncode()
也没有这样做,因为它只是添加了另一个不需要的编码,而我希望 TextBox/Label 的确切内容是传递给浏览器的 URL-bar 的字符串,然后通过按回车键 - 这应该通过代码完成。
我终于实现了,按照@Richard Housham 的建议使用 Javascript:
加价:
<asp:TextBox id="TB_ExternalLink" runat="server"/>
<asp:LINKButton ID="LB_Open" runat="server" OnClick="OpenLink">Open Link</asp:LINKButton>
<input type="hidden" runat="server" id="hiddenExternalFile"/>
代码:
protected void OpenLink(object sender, EventArgs e)
{
string url = TB_ExternalLink.Text.Replace(@"\", @"\");
hiddenExternalFile.Value = url;
Page.ClientScript.RegisterStartupScript(this.GetType(), "CallMyFunction", "windowOpen()", true);
}
Javascript:
function windowOpen() {
Window = window.open(document.getElementById('hiddenExternalFile').value, "_blank");
}
在新选项卡中打开以这些格式在文本框中键入的任何 link:
http://www.url.com
\corp.root.int\INT-Host$\USR03\XXX\W10\Desktop\Kaizen MRO\RMA_Part.png
N:\ESSBP1-Office\Imagenes\Check list.xlsx
不考虑空格或特殊 ASCI 字符