在 JavaScript 中確定應用程式根目錄
在 Web 開發中,JavaScript 通常需要存取應用程式的根目錄或基本 URL。在 ASP.NET MVC 應用程式中,應用程式根目錄可能會因部署而異。
問題:
如果JavaScript 在以下位置引用了類似“/jobs/GetIndex”的URL程式碼,當應用程式部署到“Jobs”等子資料夾時,它可能無法正常工作。這是因為 URL 將解析為「http://site/jobs/GetIndex」而不是「http://site/jobs/jobs/GetIndex」。
解決方案 1:使用絕對路徑正斜線
一個簡單的解決方案是在 URL 開頭加上正斜線(「/」)。這可確保 URL 相對於應用程式根進行解析。例如:
var urlToJobIndex2= "/jobs/GetIndex";
解決方案2:命名空間JavaScript 變數
要獲得更動態的方法,請建立JavaScript 命名空間並將應用程式根URL 指派給變數。然後,當您需要建構其他 URL 時,可以將它們附加到基本 URL。
在 Razor 視圖中,使用 Url.Content 輔助方法產生基本 URL 並將其指派給命名空間變數。確保使用JavaScript 命名空間以避免與全域變數衝突:
<script> var myApp = myApp || {}; myApp.Urls = myApp.Urls || {}; myApp.Urls.baseUrl = '@Url.Content("~")'; </script>
在JavaScript 檔案中,您可以存取基本URL:
var urlToJobIndex= myApp.Urls.jobIndexUrl;
您也可以組合基本URL使用附加路由來創建其他URL。例如:
var urlToJobIndex2= myApp.Urls.baseUrl+"jobs/GetIndex";
以上是如何確定 ASP.NET MVC 應用程式的 JavaScript 中的應用程式根目錄?的詳細內容。更多資訊請關注PHP中文網其他相關文章!