Url.Action("actionName","ControllerName",new { extraData = getdata()});
getdata()是一个javascript函数,我想像
一样使用它public ActionResult actionName(string extraData)
{
*/ bla /*
}
有人有想法吗?
答案 0 :(得分:1)
Javascript是客户端,C#是服务器端,因此不起作用。看起来你正在使用MVC,那么为什么不为这种情况创建一条路线呢?然后可以在客户端上使用javascript操作URL,并且您的服务器代码保持不变。
routes.MapRoute(
"newRoute", // Route name
"NewRoute/{extraData}", // URL with parameters
new
{
controller = "ControllerName",
action = "ActionName",
extraData = string.Empty
}
);
然后在客户端上,您可能会有如下链接:
<a id="myLink" href="about:blank">My Link</a>
您可以根据需要使用javascript操作此链接:
document.getElementById("myLink").href = "/NewRoute/" + getData();
我必须在这里做出许多假设,所以如果这不能回答你的问题,那么你可能需要添加一些关于你想要做的事情的更多细节。