Проблема обратной передачи с частичным представлением - PullRequest
0 голосов
/ 20 августа 2011

У меня есть следующее представление

<form action="/Questionnaire/Submit" method="post">
  <%:"UserName : "%>

  <%=ViewData["UserName"]%>
 <%=Html.TextBox("test",ViewData["tt"])%>
<p />
 <%:"Phone Number :"%>

 <%=ViewData["PhoneNumber"]%>
 <p />
 <%
  foreach (var q in Model)
   {
       Html.RenderPartial("Question", q);

   }
 %>
  <input type="submit" name="submit" value="submit" />
  </form>

, которое отображает следующее частичное представление

<%    using (Html.BeginForm("Submit", "Questionnaire", FormMethod.Post))
      {%>

<%:"Question Number "%>
<%=Model.QuestionNumber%>
<%:"  "%>
<%=Model.Body%>
<%:"  "%>
<%
      foreach (var option in Model.Options)
      {%>
      <p/>

   <%=Html.RadioButton(option.QuestionId.ToString(), (option.IsSelected) )%> &nbsp;<%=     option.OptionBody%>
      <%
      }
  }
%>

Проблема в том, что форма не отправляется, и когда я удаляю "foreach""оценка из основного вида, работает

Моя цель - иметь обновленную модель (из основного и частичного видов) для последующего ее сохранения в БД

1 Ответ

2 голосов
/ 20 августа 2011

Ваш главный вид содержит форму, а затем ваш частичный вид также создает форму каждый раз, когда он рендерится, поэтому у вас останется страница, содержащая несколько форм, но только одну кнопку «Отправить».

Я не уверен на 100%, что вам нужно делать, но я бы попытался удалить вызов 'BeginForm' из партиала и посмотреть, решит ли это проблему.

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