2012-04-24 3 views
5

Я пытаюсь отправить данные своей формы на мой ASP MVC-контроллер, но коллекция форм пуста. Переменные в действии связаны должным образом. Это моя форма бритвыasp mvc post не отправляет данные формы

@foreach (var recipe in Model.RecipesInCategory) { 
    <form name="input" action="mycontroller/myAction/@Model.Id1/@Model.Id2" method="post"> 
    <fieldset> 
     <table > 
     <tr> 
      <td> 
      <input id="AddBtn" type="submit" value="Add" /> 
      <select id="dayOfWeek" > 
       <option value="Sunday">Sunday</option> 
       <option value="Monday">Monday</option> 
       <option value="Tuesday">Tuesday</option> 
       <option value="Wednesday">Wednesday</option> 
       <option value="Thursday">Thursday</option> 
       <option value="Friday">Friday</option> 
       <option value="Saturday">Saturday</option> 
      </select> 
      </td> 
     </tr> 
     </table> 
    </fieldset> 
    </form> 
    } 

и вот мой контроллер. Два GUID идут должным образом, но переменная dow всегда равна нулю. Фактически, форма не имеет записей вообще.

[HttpPost] 
public ActionResult myAction(Guid Id1, Guid Id2) 
{ 
    var dow = this.Request.Form["dayOfWeek"]; 

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

+1

BTW, вы должны использовать параметры действия вместо 'Request.Form'. – SLaks

+0

Я иду из мира WPF, и мой HTML очень слаб. Я чувствую, что помощники HTML изолируют меня от HTML слишком много в этот момент. Я хочу узнать, что происходит под обложками, прежде чем я начну использовать абстракции. –

+0

Я не говорю о помощниках HTML; Я говорю о параметрах действия. Они намного проще, чем ручное чтение 'Request'. – SLaks

ответ

21

Браузер будет получать только данные POST из элементов формы с атрибутами name="".

+0

отлично! кто это сделал. спасибо. –

+1

, так что дайте мне посмотреть, ясно ли я - POST использует «имя», а CSS/JS использует идентификатор? –

+2

Точно. 'name' не обязательно быть уникальным. (на самом деле, для переключателей, он не должен быть уникальным) – SLaks

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