Asp.net mvc 2 ASP.NET按钮单击事件似乎未触发

Asp.net mvc 2 ASP.NET按钮单击事件似乎未触发,asp.net-mvc-2,Asp.net Mvc 2,我对ASP.NET比较陌生。我有一个ASP.NETMVC2Web应用程序项目(在VisualStudio2010中创建)。我向HomeController添加了一个名为Search的方法 public ActionResult Search() { return View(); } 并创建了一个名为Search.aspx的对应视图(网页),我在该视图上放置了一个按钮。我双击按钮为按钮单击事件添加一个处理程序,该事件设置文本框的文本,然后构建应用程序 <script runat="

我对ASP.NET比较陌生。我有一个ASP.NETMVC2Web应用程序项目(在VisualStudio2010中创建)。我向HomeController添加了一个名为Search的方法

public ActionResult Search()
{
    return View();
}
并创建了一个名为Search.aspx的对应视图(网页),我在该视图上放置了一个按钮。我双击按钮为按钮单击事件添加一个处理程序,该事件设置文本框的文本,然后构建应用程序

<script runat="server">


protected void MyButton1_Click(object sender, EventArgs e)
{
    System.Diagnostics.Debug.WriteLine("Undo button clicked");
    m_search_text_box.Text = "MyButton1_Click";
}

受保护的无效MyButton1\u单击(对象发送者,事件参数e)
{
System.Diagnostics.Debug.WriteLine(“单击撤消按钮”);
m_search_text_box.text=“MyButton1_单击”;
}

当我点击浏览器中的按钮时(我在Chrome和Internet Explorer中进行了测试),什么也没发生。文本框不会更新。也不会将任何内容写入输出窗口。所以,看起来事件并没有启动。有人能提出什么建议吗?我正在Windows7上使用VisualStudio2010


感谢您将WebForms事件处理混合到MVC应用程序中。MVC不像WebForms那样工作。查看以帮助您沿着正确的道路开始


这里有一个循序渐进的教程,帮助您了解MVC的基本知识。

ASP.NET MVC不使用类似的代码隐藏处理程序。您可以使用控制器操作来响应请求,并决定如何直观地处理它们(即:您可以呈现视图,或返回JSON对象,或重定向到另一个操作等)

在您的实例中,如果您希望在用户单击按钮后将一些文本放入文本框中,您需要在表单中放置一个提交按钮,并创建一个控制器操作来响应它:

[HttpPost]
public ActionResult Search()
{
    var model = new SearchModel();
    model.StatusText = "MyButton1_Click";

    return View(model);
}
在您的视图中,您希望使用此模型,并将其
StatusText
属性值放入文本框:

<%= Html.TextBoxFor(x => x.StatusText) %>
x.StatusText)%%>

看看其中有很多很棒的入门教程和教程(本书中的免费章节)。

谢谢链接。我去看看。