2013-01-02 35 views
0

我混合Javascript和Razor代碼重定向到發送幾params.Heres我嘗試的代碼頁。訪問我的對象屬性從JavaScript和使用MVC剃鬚刀Url.Action

function insertSuccess(data) { 
     $('#NewCategoryGroup').dialog('close'); 
     var myId = data.Object.GroupCatId; 
     var myName = data.Object.ItemCategoryGroup; 
     window.location.replace("@Url.Action("CatGroupDetails","TaxRules",new { id = myId, name = myName })"); 
    } 

我可以代替Id = 1name = "test"和它的作品。但是當我嘗試使用變量時,它不會讓我。我是否必須以舊的方式編寫我的網址 - 「http://www.someweb.com/5?Name=test」。 感謝您的幫助。

+1

_「它不會讓我」_這是什麼意思?它做什麼而不是你期望的? –

回答

0

我想在你的代碼中,myId和myName是javascript變量,但是你正試圖在C-Sharp範圍下使用它們。 Url.Action是一個C#函數。

+0

所以我唯一的選擇就是像這樣寫下去:window.location.replace(「/ TaxRules/CatGroupDetails /」+ myId +「?name =」+ myName); –

+0

您仍然可以使用Url.Action並在原始網址中包含佔位符。將其存儲在一個JavaScript變量中。並在下一行中,將這些佔位符替換爲您的ID和名稱值 – dreamerkumar

+0

var url =「@ Url.Action(」CatGroupDetails「,」TaxRules「,new {id =」{0}「,name =」{1}「 })「; – dreamerkumar