MVC剃刀按钮

san*_*san 2 events button razor asp.net-mvc-3

嗨,我是MVC Razor的新手

我试图用3按钮插入,删除和更新来做一个页面.

我的观点看起来像

        <div>    
          @using (Html.BeginForm())
           {

                <input type="button" class="button1" value="Insert" />
                <input type="button" class="button1" value="Delete" />
                <input type="button" class="button1" value="Update" /> 
           }
        </div>
Run Code Online (Sandbox Code Playgroud)

而我的控制器就像

       public ActionResult Index()
       {
              return View();
       }
Run Code Online (Sandbox Code Playgroud)

我如何在我的控制器中获取这些按钮的事件,以便我能够为每个按钮编写逻辑.请帮助我获取有助于解决此问题的编码或任何合适的链接.

谢谢圣

Kir*_*oll 8

给按钮命名:

<div>    
 @using (Html.BeginForm())
 {
     <input type="button" name="button" class="button1" value="Insert" />
     <input type="button" name="button" class="button1" value="Delete" />
     <input type="button" name="button" class="button1" value="Update" /> 
 }
</div>
Run Code Online (Sandbox Code Playgroud)

并在你的行动中使用它:

public ActionResult Index(string button)
{
    switch (button)  
    {
        case "Insert": ...
        case "Update": ...
        case "Delete": ...       
    }

    return View();
}
Run Code Online (Sandbox Code Playgroud)

尽管如此,我不会使用这种方法.我会动态修改表单操作到不同的控制器操作(使用Url.Action)将代码挂钩到使用jQuery单击处理程序.

  • 只为最后一句话+1.这就是为什么我讨厌网络表单 - 不是因为技术,因为事件驱动思维如何洗脑.net网络开发人员,我们完全忘记了HTTP的全部内容.MVC的开发人员需要基本上忘记他们的很多网络形式的思维愿景. (3认同)
  • @cvista - 听起来你正在为重复点而烦恼.:)无论如何,每个CRUD操作都应该有一个单独的动作方法,最好使用适当的http动词属性(REST).URL不需要本地化,因为无论如何你应该重定向(PRG).这是应该本地化的按钮文本.所以应该有4种行动方法. (2认同)