Ajax вызов не работает при повторном вызове
Привет там, может кто-то pls помочь мне здесь, я вызываю ниже функцию ajax при нажатии кнопки, эта функция вызывает метод контроллера в 1-й раз,2-й раз и на 3-й раз функция не вызывает метод контроллера, без вызова метода контроллера он выполняет блок success. я попытался добавить asc:false в параметры ajax, которые не работают.
function Applicant() { $.ajax({ type: "GET", url: "/CreateApplicationFromSearch/CreateApplicationFromSearch", contentType: "application/json; charset=utf-8", async: false, data: { "Applicant_id": ApplicantId, "Application_id": ApplicationId, "OfficeHolder_id": OfficeHolderId, "AccountDetail_Id": AccountDetailId, "contact_person_id": ContactPersonId }, dataType: "html", success: function (data) { ("Sucess"); }, error: function () { alert("Errors arose."); } }); @using (Html.BeginForm("SaveApplicant", "CreateApplicationFromSearch", FormMethod.Post, new { Application_id = @ViewBag.Application_id, OfficeHolder_id = @ViewBag.OfficeHolder_id, enctype = "multipart/form-data", id = "ApplicantForm" }))
Код в контроллере
[httpGet] [AllowAnonymous] public ActionResult CreateApplicationFromSearch(int Applicant_id, int Application_id, string OfficeHolder_id, int? AccountDetail_Id, string contact_person_id, bool? CameFromLink, bool? Application_Submitted,bool? Validate_PartOne=false ) { Applicant = Applicant_Service.GetApplicantById(Applicant_id); @ViewBag.Application_id = Application_id; ViewData["OfficeHolder_id"] = OfficeHolder_id; ViewData["AccountDetail_Id"] = AccountDetail_Id; ViewData["contact_person_id"] = contact_person_id; return View("../Application/CreateApplicantFromSearch", Applicant); }
Что я уже пробовал:
tried adding async: false in ajax options.
Richard Deeming
JQuery ajax
метод не принимает опцию под названием "asc". Вы имели в виду "кэш" вместо этого?
на jQuery."Аякс" () | библиотека jQuery API документация[^]
Member 12697982
Извините, что я попробовал async: false, когда вам нужно, чтобы ajax-запрос был завершен до того, как браузер перейдет к другому коду
Richard Deeming
Вы должны избегать использования async
флаг, так как он заставляет браузер зависать во время обработки запроса.
Попробуйте использовать cache:false
чтобы увидеть, кэшируется ли ответ.
Member 12697982
Привет, спасибо (кэш: false) сработало