簡體   English   中英

Server.MapPath 和 window.open()

[英]Server.MapPath and window.open()

我實際上正在開發一個應用程序,它為用戶提供上傳他們想要的文件的可能性。 上傳后,這些文件也應該是可視化的。

為了做到這一點,我正在嘗試使用 Server.MapPath 和其他值的串聯來獲取文件路徑。 文件路徑在 window.open javascript 函數中作為參數傳遞。

我的問題是我根本沒有得到任何結果。 沒有窗口打開。

這是我的代碼:

string completeUrl = Server.MapPath(ConfigurationManager.AppSettings["UsersImagesUploadFolder"] + CurrentUserLogin +
                               @"\\" + ((GridDataItem) e.Item)["Url"].Text);

string radWindowOpen = "<script type='text/javascript'>window.open('" + completeUrl + "')</" + "script>";
 Page.ClientScript.RegisterStartupScript(this.GetType(), "fileDisplay", radWindowOpen);

我可能遺漏了一些明顯的東西,但我不明白它是什么。

謝謝您的回答。

正如 Damien 所指出的, Server.MapPath用於服務器端路徑映射。 客戶需要看到您的 Web 應用程序下方的路徑。

例如:

Page.ResolveUrl("~/uploads/" + ConfigurationManager.AppSettings["UsersImagesUploadFolder"] ...

將解析為http://mydomain/vroot/uploads/...等。

順便說一句,還要注意@"\\\\"會導致雙反斜杠,我認為您不是故意的。

@"\\""\\\\"中的任何一個都會產生一個反斜杠。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM