2013-11-07 3 views
0

У меня есть вид бритвы для обновления модели. Модель правильно передала представление, но при попытке отправки изменений обратно в контроллер модель возвращается без изменений.Значения не обновляются в поле зрения

// контроллер/SaveLimit

public ActionResult SaveLimit(Limit _limit) 
     { 
      _masterData.SaveLimit(_limit); 

      return RedirectToAction("MasterData"); 
     } 

// вид

@model Core.DataModel.Limit 
@{ 
    ViewBag.Title = "Calculation Master"; 
    Layout = "~/Views/Shared/_MasterLayout.cshtml"; 
} 

<h2 class="centerText">Create New Employee Limit</h2> 
    <div id="tabs" style="margin-left: 20px; padding-left: 20px; width: 90%;"> 

     <table style="margin-left: 50px; width: 35%; margin: 0 auto;"> 
      @using (Html.BeginForm()) 
      { 
       <tr> 
        <td class="spin"> 
         @Html.LabelFor(model => model.Limit) 

        </td> 
        <td> 
         @Html.EditorFor(model => model.Limit) 

        </td> 
       </tr> 
       <tr> 
        <td> 
         @Html.LabelFor(model => model.StartDate) 
        </td> 
        <td> 
         @Html.EditorFor(model => model.StartDate) 
        </td> 

       </tr> 
       <tr> 
        <td>@Html.ActionLink("Save", "SaveLimit", Model, new {@class = "button"})</td> 
        <td>@Html.ActionLink("Cancel", "MasterData", null, new {@class = "button"})</td> 
       </tr> 
      } 
     </table> 

    </div> 
+0

Также включите визуализированный HTML-код, который также будет полезен. –

+0

Также покажите полный код Razor. Например, у вас есть объявление '@ model' вверху, и если да, покажите нам, что это такое. –

+0

@JeradRose я обновил –

ответ

1

Похоже, что причина не в том, что у вас нет кнопки отправки. Обычная ссылка не будет отправлять форму (если вы не добавите какой-либо JavaScript). Добавьте это на ваш вид:

@using (Html.BeginForm("SaveLimit", "yourcontroller")) 
{ 
    // Rest of view 
    <input type="submit" value="Save" /> 
} 
0

Я думаю, вам нужно обернуть все это в Form или BeginForm. Или покажите свой фоновый javascript, если у вас есть.

+0

Я пробовал это и не помог –

+1

использовать '' вместо '@ Html.ActionLink («Сохранить», «SaveLimit», Model, new {@class = "button"}) ' – Valerii

0

Похоже, что вам не хватает формы. Оберните свою форму внутри:

using (@Html.BeginForm()) 
{ 
    ... 
} 
+0

Это не работает. Я обновлю то, что у меня есть. –

Смежные вопросы