работа с формами в mvc3 - PullRequest
0 голосов
/ 04 марта 2012

У меня есть несколько форм на моей странице. Вот пример одного.

       <table width="400px">
   @foreach (var menu in Model)
   {
     using (Html.BeginForm())
     {
       <tr>
         <td>
           @menu.Menus
         </td>
          <td>
         @menu.Submenu
         </td>
           <td>
           <input type="submit" name="update" value="Update" />&nbsp;&nbsp;&nbsp;
           <input type="submit" name="delete" value="Delete" />
           @Html.Hidden(@menu.MenuID.ToString());


         </td>

       </tr>
     }
   }

   </table>

Я хочу, чтобы каждое из моих действий вызывалось кнопкой отправки форм. Таким образом, действие будет вызываться в зависимости от того, была ли нажата кнопка отправки обновления или нажата кнопка удаления или была ли нажата кнопка без атрибута имени ... Я также хочу, чтобы моя форма была опубликована только для. Как мне достичь всего этого?

1 Ответ

1 голос
/ 04 марта 2012

В представлении вы оборачиваете каждую кнопку своей формой. Например для обновления

@using (Html.BeginForm("Update","Home"))
{
 @Html.Hidden(menu.MenuID.ToString());      
 }

@using (Html.BeginForm("Delete","Home"))
{
 @Html.Hidden(menu.MenuID.ToString());      
 }

Для каждого действия, которое вы будете иметь в контроллере

[HttpPost]
public ActionResult Update(int id)
{
   //do stuff
 }

[HttpPost]
public ActionResult Delete(int id)
{
   //do stuff
 }

Полагаю, что для обновления требуется больше, чем идентификатор, эти поля должны быть включены в форму и аргументы действия.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...