Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jquery文件上传:销毁后如何获得服务器响应?_Jquery_Ruby On Rails - Fatal编程技术网

jquery文件上传:销毁后如何获得服务器响应?

jquery文件上传:销毁后如何获得服务器响应?,jquery,ruby-on-rails,Jquery,Ruby On Rails,我正在使用jquery文件上载,并尝试在销毁操作完成后从服务器接收数据,但未成功 我可以通过firebug看到,一旦销毁操作完成,服务器就会正确地使用我期望的json数据进行响应(我使用rails作为后端),但是在jquery端,我没有成功地获得响应数据。我尝试了jquery文件上传提供的不同回调,但没有成功 有什么提示吗?:) 为了澄清,我尝试这样做: $('#fileupload').bind('fileuploaddestroyed', function(e, data) { cons

我正在使用jquery文件上载,并尝试在销毁操作完成后从服务器接收数据,但未成功

我可以通过firebug看到,一旦销毁操作完成,服务器就会正确地使用我期望的json数据进行响应(我使用rails作为后端),但是在jquery端,我没有成功地获得响应数据。我尝试了jquery文件上传提供的不同回调,但没有成功

有什么提示吗?:)

为了澄清,我尝试这样做:

$('#fileupload').bind('fileuploaddestroyed', function(e, data) {
  console.log(data.response.my_value);
});

找到了一个替代方案,因为显然无法以本机方式获取服务器响应。一个解决方案是修改jquery文件上载内部构件,但我是这样实现的:

$('#fileupload').bind('fileuploaddestroyed', function(e, data) {
  console.log(data.response.my_value);
});
在文件上传时,我启动第二个Ajax调用。这并不理想,因为它会触发第二个HTTP请求,但这是我想到的最简单的快速实现

$('#fileupload').bind('fileuploaddestroyed', function() {
  destroyed_photo();
});


function destroyed_photo() {
  $.ajax({
    url: ($('form#fileupload').attr('action') + '/my_method'),
    dataType: "text",
    type: 'GET',
    processData: false,
    contentType: 'application/json',
    success: function(data) {
      console.log(data); }
  });
}