我知道这是不对的,但为了说明问题,我想这样做:
<%= Html.Button("Action", "Controller") %>
我的目标是使一个HTML按钮,将调用我的MVC控制器的动作方法。
我知道这是不对的,但为了说明问题,我想这样做:
<%= Html.Button("Action", "Controller") %>
我的目标是使一个HTML按钮,将调用我的MVC控制器的动作方法。
当前回答
<button type="button" onclick="location.href='@Url.Action("MyAction", "MyController")'" />
Type ="button"阻止页面提交,而是执行您的操作。
其他回答
如果你在主页(“/ home /Index”),你想调用管理控制器的索引动作,下面将为你工作。
<li><a href="/Admin/Index">Admin</a></li>
HTML <button>元素只能回发到包含它的表单。
因此,您需要创建一个post到动作的表单,然后在表单中放入一个<button>或<input type="submit" />。
你可以使用Url。动作来指定生成控制器动作的url,所以你可以使用以下任何一个:
<form method="post" action="<%: Url.Action("About", "Home") %>">
<input type="submit" value="Click me to go to /Home/About" />
</form>
or:
<form action="#">
<input type="submit" onclick="parent.location='<%: Url.Action("About", "Home") %>';return false;" value="Click me to go to /Home/About" />
<input type="submit" onclick="parent.location='<%: Url.Action("Register", "Account") %>';return false;" value="Click me to go to /Account/Register" />
</form>
我用的是Razor,但这两者都可以。我基本上是在链接中包装一个按钮。
<a href="Controller/ActionMethod">
<input type="button" value="Click Me" />
</a>
<button type="button" onclick="location.href='@Url.Action("MyAction", "MyController")'" />
Type ="button"阻止页面提交,而是执行您的操作。