ASP.Net MVCは1つのフォームの複数のsubmitを実現する

2137 ワード

1.Htmlを用いる.BeginForm(ActionName,ControllerName,Post)はcontroller-actionのルーティングを実現し、
2.Formの各inputのname値は統一されています.たとえばcommandNameと名付けられ、各inputのvalueは異なる値に設定されています.
3.アクション処理方法のパラメータを変更し、commandNameのパラメータを追加すると、commandNameの値はinput設定のvalueになります.
例:
@using (Html.BeginForm("SaveRisDBConfig", "Home", FormMethod.Post)) {   <div class="display-field">     @Html.LabelFor(model => model.DBHost)  </div><div class="editor-field">     @Html.EditorFor(model => model.DBHost)     @Html.ValidationMessageFor(model => model.DBHost) </div>           <input type="submit" value="  " name="commandName"/>          <input type="submit" value="    " name="commandName"/> } 


 [HttpPost] public ActionResult SaveRisDBConfig(string commandName) 
 { 
      switch (commandName) 
      {           case "  ": 
                .... 
           case "    ": 
                ... 
           default: 
                break;      } 
 }