2014-05-23 58 views
0

我正在mvc項目中工作。我在js文件中使用javascript模塊來執行一些操作。如何在mvc項目中創建javascript相對操作鏈接

我正在創建和使用js文件中的鏈接。例如訪問一個圖像文件。

var selectIcon = function() { 
     return "/Images/ui/ShapefileLine16.png"; 
} 

我想發送請求到這樣的產品控制器中的操作方法。

this.getProducts = function() { 
    $.get('Product/GetProjducts', { }, this.products); 
} 

此代碼正在開發時,Visual Studio IIS Express。

但是,當我在Default Web Site下的IIS虛擬目錄上發佈項目時,這些功能不起作用。找不到圖像和控制器操作資源。

我怎樣才能相對訪問資源? (@ Url.ActionLink工作在MVC,但我不能用它)

+0

它已經在SO [one]上討論了很多次(http://stackoverflow.com/questions/13640559/asp-net-mvc-url-action-in-external-js-file),[two](http:// stackoverflow .com/questions/922997/asp-net-mvc-resolve-urls-in-javascript),[three](http://stackoverflow.com/questions/2012610/generating-an-action-url-in-javascript- for-asp-net-mvc)...只需通過關鍵字進行簡單搜索就可以解決您的問題。 – Zabavsky

回答

0

這是從來沒有一個真正的好主意,硬編碼的網址,你應該使用Url.Content靜態資源和Url.Action的控制器操作

var selectIcon = function() { 
    return '@Url.Content("~/Images/ui/ShapefileLine16.png")'; 
} 

this.getProducts = function() { 
    $.get('@Url.Action("GetProducts", "Products")', {}, this.products); 
} 
+0

我可以在

相關問題