0
我环顾四周,但无法找到任何解决此问题(常见问题)的问题。Ajax.Beginform更新目标和局部视图
我的问题是,整个网站刷新,而不是只是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>
谢谢!
不,没有工作将它们添加:( – Pagaard 2012-02-07 16:48:35
其实这是很奇怪的,我瑞普你的代码,它的工作原理非常完美,请指定您使用的浏览器,并提供有关此问题的其他详细信息。 – Kath 2012-02-07 18:20:28