【问题标题】:mvc partial post back when button is clicked using ajax使用ajax单击按钮时mvc部分回发
【发布时间】:2009-06-11 20:06:52
【问题描述】:

场景: 我有一个下拉列表、一个按钮和一个显示模型数据的 html 表。 下面是aspx & controller中的代码

当我点击提交按钮时,数据显示没有回发,但下拉列表和按钮出现两次,然后以下点击就可以了。

我是否应该在任何地方使用 Html.RenderPartial,不确定???

//Controller
[AcceptVerbs(HttpVerbs.Post)]
        public ActionResult SimpleUpdate(int carMake)
        {
            ViewData["CarMake"] = new SelectList(_carDataContext.Makes.Select(m => new { ID = m.Id, Name = m.Name }), "ID", "Name", carMake);
            var carModel = _carDataContext.Models.Where(m => m.MakeId == carMake).ToList();
            return PartialView("carmodels", carModel);
        }

// in aspx
    <%using (Ajax.BeginForm("SimpleUpdate", new AjaxOptions { UpdateTargetId = "ajaxPanel" }))
          {%>
        <%=Html.DropDownList("CarMake")%>
        <br />
        <input type="submit" value="SimpleUpdate" />
        <%
            }%>
        <div id="ajaxPanel">
            <%
                if (Model != null)
                {
            %>
            <table>
                <tr>
                    <th>
                        Id
                    </th>
                    <th>
                        Name
                    </th>
                    <th>
                        MakeId
                    </th>
                </tr>
                <%

                    foreach (var item in Model)
                    {%>
                <tr>
                    <td>
                        <%=Html.Encode(item.Id)%>
                    </td>
                    <td>
                        <%=Html.Encode(item.Name)%>
                    </td>
                    <td>
                        <%=Html.Encode(item.MakeId)%>
                    </td>
                </tr>
                <%
                    }%>
            </table>
            <%}%>
        </div>

【问题讨论】:

    标签: asp.net-mvc ajax partial-views


    【解决方案1】:

    在这种情况下,您需要创建部分视图(如用户控件)而不是普通视图。并且您必须使用 Html.RenderPartial 将局部视图作为控件添加到主视图中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-29
      • 1970-01-01
      • 2015-05-22
      • 2014-11-20
      相关资源
      最近更新 更多