首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Ajax文件上传中返回值

如何在Ajax文件上传中返回值
EN

Stack Overflow用户
提问于 2012-01-30 18:10:26
回答 2查看 1.8K关注 0票数 0

我正在使用Ajax upload插件通过Ajax上传文件。它的工作很好,文件被成功上传,我也可以访问它在onComplete event.Now中的内容我想返回上传的file.How的数据库id可以将数据库id从我的spring控制器发送到onComplete函数吗?

这是我的JS

代码语言:javascript
运行
复制
  new Ajax_upload('#clickToUpload', {
        action: '/portal/request/MRNFile/upload',
        allowedExtensions: ['csv','jpeg'], 
        onComplete : function(file){
            $('#progress').text('Uploaded ' + file + '. ');
                    //how to access database id here
        }       
    });

控制器

代码语言:javascript
运行
复制
 @RequestMapping(value = "/upload", method = RequestMethod.POST)
    public Integer upload(@RequestParam("userfile") MultipartFile file) {
    // This will save file to database and will return its id
         return id;
    }  

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-01-30 18:49:18

您必须返回json对象,而不是在upload()函数中返回id,如下所示

代码语言:javascript
运行
复制
JSONObject json = new JSONObject();
json.put("id", database_id);
return json;

并将onComplete:function(file)更改为onComplete:onComplete(文件,数据)

您可以这样访问id:data.id ( json对象中的键名)

票数 1
EN

Stack Overflow用户

发布于 2012-01-30 18:24:07

在服务器端通过echo或任何对文件id的重新表示来渲染,然后它会返回到JS中的file变量中。

如果希望同时返回content和id,请使用

代码语言:javascript
运行
复制
echo json_encode(array('content' => 'content', 'id' => 'yourId'));

在js中,在file = JSON.parse(file);之后通过file.contentfile.id访问它。

如果您不使用PHP,只需返回带有两个键的JSON编码数组- idcontent

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9062241

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档