【发布时间】:2019-06-01 08:03:52
【问题描述】:
我使用Ajax.BeginForm创建了一个表单
@using (Ajax.BeginForm("CreatePlayer", "Admin", null, new AjaxOptions() { HttpMethod = "post" }))
{
<div class="row">
<div class="col-md-6">
<div class="text-style-roboto form-group">
<label>Имя</label>
@Html.TextBoxFor(x => x.Name, new { @class = "form-control" })
@Html.ValidationMessageFor(m => m.Name)
</div>
<div class="form-group">
<button type="submit" class="button button-create">Добавить</button>
</div>
</div>
</div>
}
当我按下按钮创建一个新播放器时,会创建一个播放器,但表单保持填充状态。
期望的行为是应该清除表单,但事实并非如此。我不知道如何使用 jQuery 清除表单。我应该刷新页面还是其他方式。
我在控制器中的发布操作是 -
[HttpPost]
public JsonResult CreatePlayer(CreatePlayerModel model, string TeamNameId)
{
if (ModelState.IsValid)
{
if (TeamNameId != string.Empty)
{
try
{
int newTeamId = int.Parse(TeamNameId);
repository.CreatePlayer(model, newTeamId);
TempData["message"] = string.Format("Игрок {0} {1} сохранены", model.Name, model.Surname);
return new JsonResult()
{
JsonRequestBehavior = JsonRequestBehavior.AllowGet,
Data = new { result = "success" }
};
}
catch (Exception exc)
{
Console.WriteLine(exc.Message);
}
}
}
IEnumerable<SelectListItem> list = new SelectList(repository.Teams, "Id ", "Name");
ViewBag.ChoosingTeam = list;
return new JsonResult()
{
JsonRequestBehavior = JsonRequestBehavior.AllowGet,
Data = new { result = "error" }
};
}
如果需要,我可以通过 html 表单对 Ajax 执行操作。
【问题讨论】:
标签: c# jquery asp.net-mvc asp.net-ajax