Я смотрю в файле макета нет сценария Unobtrusive Ajax. Сценарий только в представлении индекса. Вот код представления индекса:
@using (Ajax.BeginForm("Index", "Home", new AjaxOptions() { HttpMethod = "Post", OnSuccess = "successform" }))
{
//Some code
}
Вот раздел скрипта представления индекса:
@section myscript{
<script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>
<script>
function successform() {
//alert("a");
$.ajax(
{
type: "GET",
url: "/Home/ContactUs"
}
).done(function (editform) {
$("#dlgcreate-hdr").html("Thanks");
$("#dlgcreate-bdy").html(editform);
$("#dlgcreate").modal();
});
}
</script>
}
Вот код контроллера:
[HttpPost]
public ActionResult Index(ContactUsModel model)
{
try
{
if (ModelState.IsValid)
{
ContactUs entity = model.ToContactUsEntity();
TempData["ContactUsPersonName"] = model.Name;
entity.Status = "Pending";
new TourHandler().AddContactUsForm(entity);
return RedirectToAction("index");
}
}
catch (Exception ex)
{
return RedirectToAction("index");
}
return RedirectToAction("index");
}
[HttpGet]
public ActionResult ContactUs()
{
ViewBag.Data = TempData["ContactUsPersonName"];
return PartialView("~/Views/Shared/_ContactUsFormSubmit.cshtml");
}
Как я сказал вам ранее, в файле макета нет дополнительного "Ненавязчивого Ajax" скрипта файла.