【问题标题】:Postback problem with partial view部分视图的回发问题
【发布时间】:2011-08-21 02:29:06
【问题描述】:

我有以下看法

<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”语句时,它可以工作

我的目标是让更新的模型(从主视图和部分视图)稍后保存在数据库中

【问题讨论】:

    标签: asp.net-mvc asp.net-mvc-3 asp.net-mvc-2


    【解决方案1】:

    您的主视图包含一个表单,然后您的局部视图在每次呈现时也会创建一个表单,因此您将看到一个包含多个表单但只有一个“提交”按钮的页面。

    我不能 100% 确定您需要做什么,但我会尝试从部分中删除“BeginForm”调用,看看是否能解决问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-11
      • 1970-01-01
      • 1970-01-01
      • 2014-05-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多