首頁  >  文章  >  web前端  >  如何確定 ASP.NET MVC 應用程式的 JavaScript 中的應用程式根目錄?

如何確定 ASP.NET MVC 應用程式的 JavaScript 中的應用程式根目錄?

Susan Sarandon
Susan Sarandon原創
2024-11-02 03:29:02527瀏覽

How to Determine the Application Root in JavaScript for ASP.NET MVC Applications?

在 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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn