2
我正在使用C#,MVC3和Razor。MVC3 - Javascript中動態URL重定向
我有一個javascript函數(在視圖中),當一個特定的菜單項被點擊時被調用。在這個函數中,我需要建立一個帶有參數的新URL(基於屏幕上的其他選擇)並重定向到它。它希望它能做這樣的事情:
ValueA和ValueB是JavaScript部分中的變量,並用值填充。
function doSomething(ID) {
location.href = "../Area/Controller/Action?ID=" + ID + "&ValueA=" + ValueA + "&ValueB=" + ValueB;
}
然而,由於MVC的性質,我需要確保URL永遠是對的,無論用戶怎麼到了頁面。我試着使用@ Url.Content(「」)(見下面的代碼塊),但我碰到的問題是:
- 「ID」不會在目前情況下
- 的存在名稱名稱「值a」不在當前情況下存在
- 「VALUEB」這個名字不會在目前情況下
存在這裏就是我想這樣做,但在得到上述錯誤的內容的示例:
function doSomething(ID) {
location.href = @Url.Content("~/Area/Controller/Action?ID=" + ID + "&ValueA=" + ValueA + "&ValueB=" + ValueB);
}
我該如何做這項工作?有沒有更好的辦法?
感謝, 託尼
太棒了!這很有意義。我希望我已經想到了。 –
順便說一句,你應該調用'@ Url.Action'而不是'Content'。 – SLaks
謝謝。我修改了代碼以使用'@ Url.Action',因爲它與當前視圖位於同一個控制器中。很棒。 –