[英]Redirecting to a page in asp.net using jquery with passing parameters
[英]Passing dynamic parameters to ASP MVC using Jquery
我試圖將動態參數從jquery傳遞到mvc控制器。 這是我的jQuery函數
function OpenBrowserUrl(type, params)
{
window.open("{0}?linkType={1}&{2}".format(URL.openBrowserLinkURL, type, $.param(params)), '_blank');
}
參數是基於誰傳遞的而不同的。例如,它是這樣的對象: var param = { P1: "Test1", P2: "Test2" }
我試圖將其綁定在MVC控制器中。 這是現在的樣子:
public virtual RedirectResult OpenBrowserLink(object urlParameters)
{
IDictionary<string, object> paramsPair = new RouteValueDictionary(urlParameters);
foreach (var item in paramsPair)
{
System.Diagnostics.Debug.WriteLine(item.Key);
}
}
但是,它的綁定不正確。 值是空的。 在提琴手上,這是它發送數據的方式: http ://www.url.com?param1=1¶m2=2¶m3 =3
知道發生了什么嗎? 還是有更好的方法來解決這個問題? 基本上,我試圖模仿HTML Helper發送參數並使用JQuery從控制器端將其綁定的方式。 HtmlHelper示例: Html.TextboxFor(m => m.Text, new { Param1=1, Param2=2, Param3=3 });
非常感謝您的幫助
模型資料夾無法使用,因為您的object urlParameters
沒有屬性。 您應該創建強類型模型:
public class UrlParamerters
{
public string Param1 {get; set;}
public string Param2 {get; set;}
public string Param3 {get; set;}
}
或更改您的動作簽名:
public virtual RedirectResult OpenBrowserLink(string[] params)
並只傳遞一個數組或參數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.