简体   繁体   English

Ajax.Beginform updatetarget和局部视图

[英]Ajax.Beginform updatetarget and partial view

I've looked around, but can't find anything solving my problem with this (common?) issue. 我环顾四周,但找不到解决此(常见问题)问题的任何方法。

My problem is that the whole site is refreshed instead of just the div tag. 我的问题是整个网站都刷新了,而不仅仅是div标签。 It have worked once, but after an update, not anymore... 它曾经工作过一次,但是经过更新之后,不再...

AddMember.cshtml 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>

Action 行动

[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);
    }

Partial View 部分视图

@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>

Thanks in advance! 提前致谢!

You need to make sure that you included all these libraries: 您需要确保包含所有这些库:

<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>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM