Jquery 在ajax请求不满足';不能在Chrome iOS和Android中工作

Jquery 在ajax请求不满足';不能在Chrome iOS和Android中工作,jquery,ajax,Jquery,Ajax,我尝试执行AJAX请求并创建下载: $.ajax({ url: "urlToVerifyRights", ..., complete: function(){ location.href = ... } }); 似乎不适用于Chrome iOS和Android,但适用于桌面和Safari iOS 问题出在哪里?尝试“完成” $.ajax({ ... ... }).done(function() { location.href =

我尝试执行AJAX请求并创建下载:

$.ajax({
   url: "urlToVerifyRights",
   ...,

    complete: function(){
       location.href = ...
   }
});
似乎不适用于Chrome iOS和Android,但适用于桌面和Safari iOS

问题出在哪里?

尝试“完成”

$.ajax({
   ...
    ...
}).done(function() {
    location.href = ...
});
对此进行修改:

$.ajax({
   url: "urlToVerifyRights",
   ...,

    complete: function(){
       location.href = ...
       return false;
   }
});

相关:

最后一次尝试,现在承诺:

doAjax: function () {

  var deferredValue = $.Deferred(),

  $.ajax({
     url: "urlToVerifyRights",
     ...,

      complete: function(){

         deferredValue.resolve();
    }
  });

  return deferredValue.promise();

}

doAjax ()
  .then(function () {
     location.href = ...

  })

我通过以下解决方法解决了这个问题:

//我的意思是,$.ajax中的
complete

complete: function(){
          var $form = $("<form>");
          $form.prop("method", "POST");
          $form.prop("action", "urlToDownload");
          $form.prop("id", "test");
          $form.append($("<input type='hidden' value='aValue' name='inputName' />"));

          $("body").append($form);
          $form.submit();
}
complete:function(){
变量$form=$(“”);
$form.prop(“方法”、“职位”);
$form.prop(“action”、“urlToDownload”);
$form.prop(“id”、“测试”);
$form.append($(“”));
$(“正文”)。附加($表格);
$form.submit();
}

这就是工作。我不知道为什么,但很有效。

同样的事情。。。什么也没发生,下载不起作用。请尝试添加。也失败。也许ajax不起作用是因为跨域或类似的东西我使用Telerik的AppBuilder进行了调试,并且没有出现错误。我在
fail
中放了一个警报,它没有显示在屏幕上,所以没有错误。你能做一个小提琴来重现吗?JSFIDLE不会有帮助,我创建了一个简单的应用程序,我把它放在IIS服务器上,我重现了这个问题,即使没有错误发生。同样的事情(同样的问题)对不起,没有更多的数据,我也帮不上忙。它应该可以正常工作。您可以使用
setTimeOut
测试2秒钟并进行下载。同样的事情。。。在Safari上工作,但在Chrome上不工作当你说“下载”时,你是说你的location.href链接到一个可下载的文件吗?您是否尝试将location.href更改为警报或日志以检查问题是否存在?我已检查,确定。。。url是可以的。我用一个简单的
location.href
尝试了一个小应用程序,效果很好。使用ajax是行不通的。请看我的答案,我找到了解决问题的方法