作为标题,当我单击主视图上的按钮时,我需要它来调用控制器中该视图的方法。我已经尝试了几个小时,并且已经多次更改了特定的代码行,但是所有变体似乎都给出了相同的错误,因此我只是显示了最简单的版本来阐明我的意思。每次尝试尝试时,都会出现404错误,找不到路径。所以我认为我认为代码有问题。我没有使用JQuery或任何javascipt
我的索引视图中的代码行:
@Html.ActionLink("Button4Pressed", "Button4Pressed", "HomeController");
我知道这对获取方法无效,但是对更改页面有效,所以我想我将从这里开始。我不确定是否应该将其作为href或按钮。
我的HomeController中的方法:
[HttpPost]
public ActionResult Button4Pressed()
{
state = "year";
MyChart();
return View();
}
我对MVC来说还很陌生,可以做一些非常愚蠢的事情,因此感谢您的帮助。
答案 0 :(得分:0)
您有两个选择:
从您的控制器方法中删除[HttpPost]
属性,您将能够创建指向该属性的常规链接,即使用@Html.ActionLink()
保留[HttpPost]
属性,并使用表单或ajax将请求作为HTTP Post请求发送,即
<form id="Button4Pressed" action="@Url.Action("Button4Pressed", "Home")" method="post"></form>
<a href="#" onclick="javascript:document.getElementById('Button4Pressed').submit()">Button4</a>