【发布时间】:2015-09-21 04:00:29
【问题描述】:
我正在尝试将动态参数从 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 Helpers 发送参数的方式,并使用 JQuery 从控制器端绑定它。 HtmlHelper 示例:Html.TextboxFor(m => m.Text, new { Param1=1, Param2=2, Param3=3 });
非常感谢您的帮助
【问题讨论】:
标签: javascript c# jquery asp.net-mvc asp.net-mvc-4