jQuery ajaxSubmit调用总是返回一个带有response.statusText =’n / a’的0响应代码

背景:jquery 1.5.2,ruby on rails。

主要问题似乎是我得到一个0响应代码,无论Web服务器告诉我它返回什么。

我有一个应用程序在模型validation失败时返回422,但由于某种原因,每次调用成功函数。

$("#form").ajaxSubmit({ dataType: 'json', success: function(data, status, response) { // stuff }, error: function(data) { // stuff } }); 

当我调试.log所有内容时,这就是我所看到的:

 POST http://site/favicons 422 (Unprocessable Entity) data: Object favicon: "Image must be 16x16 pixels" __proto__: Object status: success response:Object abort: function (status) { aborted: 0 getAllResponseHeaders: function () {} getResponseHeader: function (header){ responseText: "{"favicon":"Image must be 16x16 pixels"}" responseXML: null setRequestHeader: function () {} status: 0 statusText: "n/a" __proto__: Object 

问题是因为我正在进行文件上传,它总是返回0和n / a。