jQuery Ajax等待结果MVC控制器

时间:2017-11-19 12:42:54

标签: jquery asp.net-mvc asp.net-ajax

由于(Ajax)async: false已被弃用,因此等待控制器的结果存在问题。

Ajax调用

$.ajax({
  beforeSend: function () {
    $("#overlay").css("display", "block");
  },
  url: '/ApplicationSettings/TestMuisConnection',
  type: 'GET',
}).done(function (data) {
  $("#overlay").css("display", "none");
  if (data.succes) {
    alert("Connectie geslaagd!");
  } else {
    alert("Connectie mislukt!");
  }
}).fail(function (data) {
  $("#overlay").css("display", "none");
  alert("Onverwachte fout!");
});

AJAX函数调用控制器中的以下方法:

 public async Task<JsonResult> TestMuisConnection() {
   return Json(new { succes = await Task.Run(() => _muisAuthHelper.TestConnection()) });
 }

问题是在mvc控制器函数返回值之前调用了.fail()函数。所以它不会等待它的回应。我看了很多帖子,但我无法弄清楚如何等待控制器的响应。

0 个答案:

没有答案