我有以下标记:
<a href="controllerName/ActionMethodName?Pid=@Model.Collection[i].Pid">Know more</a>
我使用以下 javascript:
将用户重定向到此页面<input type="button" id="btnGoTo" value="ButtonCaption" onclick="window.location.href = '../Product/Index';" />
问题是当用户被重定向时,重定向发生为:
controllerName / controllerName / ActionMethodName ...
答案 0 :(得分:0)
您应该使用路线:
onclick="window.location.href = '@(Url.Action("Index","Product")'"
不要在MVC中硬编码URL,始终使用URL帮助程序。
答案 1 :(得分:0)
你不应该有任何javascript。您将自动重定向到具有该href
的指定网址。如果您使用RAZOR View Engine
,那么您的通话应该是:
@Html.ActionLink(
"some text",
"MyAction",
"MyController",
new { myParams = "Hello" },
null
)
将生成正确的锚标记:
<a href="/MyController/MyAction?myParams=Hello">some text</a>
您可以使用其中任何一个。在您的情况下,只需将/
放在控制器名称之前就可以跳过使用Javascript。