【问题标题】:Ajax.Beginform updatetarget and partial viewAjax.Beginform updatetarget 和局部视图
【发布时间】:2012-02-06 19:43:37
【问题描述】:

我环顾四周,但找不到任何解决这个(常见?)问题的方法。

我的问题是整个网站都被刷新了,而不仅仅是 div 标签。它曾经工作过,但在更新后,不再......

AddMember.cshtml

@using DBSUSite.ViewModels
@model CommitteeAddMemberModel
<script src='@Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js")' type="text/javascript"></script>
<h1>
    Tilføj medlem</h1>
<p>
    Her kan du søge efter brugere og tilføje dem til bestyrelsen eller udvalget.</p>
@using (Ajax.BeginForm("SearchMembers", new AjaxOptions { UpdateTargetId = "searchUsersList", HttpMethod = "POST" }))
{
    @Html.HiddenFor(model => model.CommitteeId)
    <label for="str">
        Søg efter:
    </label>
    <input id="str" name="str" value="" />
    <input type="submit" value="Søg" />
}
<div id="searchUsersList">
    @{ Html.RenderPartial("_SearchUserPartial", Model); }
</div>

动作

[Authorize]

    [HttpPost]
    public ActionResult SearchMembers(int committeeId, string str)
    {
        //TODO: Put into User model!
        var db = new DBEntities();
        // Removed lots of code.
        var model = new CommitteeAddMemberModel { CommitteeId = committeeId, Users = users.Values.AsEnumerable() };

        return PartialView("_SearchUserPartial", model);
    }

局部视图

@using DBSUSite.Models
@using DBSUSite.ViewModels
@model CommitteeAddMemberModel
<table>
    <thead>
        <tr>
            <th>
                Navn
            </th>
            <th>Tilføj</th>
        </tr>
    </thead>
    <tbody>
        @foreach (User user in Model.Users)
        {
            <tr>
                <td>
                    @Html.DisplayFor(q => user.FirstName) @Html.DisplayFor(q => user.Surname)
                </td>
                <td>
                    @Html.ActionLink("Tilføj", "SaveMember", "Committee", new { committeeId = Model.CommitteeId, userId = user.UserID }, null)
                </td>
            </tr>
        }
    </tbody>
</table>

提前致谢!

【问题讨论】:

    标签: c# asp.net-mvc razor asp.net-ajax


    【解决方案1】:

    您需要确保包含所有这些库:

    <script src="@Url.Content("~/Scripts/MicrosoftMvcAjax.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/Scripts/MicrosoftAjax.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js")" type="text/javascript"></script>
    

    【讨论】:

    • 其实很奇怪。我已经复制了您的代码,并且效果很好。请指定您使用的浏览器,并可能提供有关此问题的更多详细信息。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多