javascript - 上传多个图像 parse.com javascript

标签 javascript parse-platform

我正在尝试使用 JavaScript 代码在 parse.com 中进行多次上传。 我已成功将一张图像上传到一个类中,但现在我希望在不同的行中上传多张图像。

我已经尝试过了

<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<script src="http://www.parsecdn.com/js/parse-latest.js"></script>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no">
<meta charset="utf-8">
<script type="text/javascript">
$(document).ready(function() {
    Parse.initialize("APPID", "JSKEY");
    function saveJobApp(objParseFile) {
        var jobApplication = new Parse.Object("imagemagazia");
        jobApplication.set("imagename", objParseFile);
        jobApplication.save(null, {
                success: function(gameScore) {
                     alert("succesfull save image");      
                },
                error: function(gameScore, error) {
                    alert('Failed to create new object, with error code: ' + error.description);
                }
            });
    }
    $('#submitId').on("click", function(e) {    
        PhotoUpload();
        });
         function PhotoUpload() {
        var test = [];   
        console.log("edw");
        var fileUploadControl = $("#profilePhotoFileUpload")[0];
        for (i=0; i<3; i++){
        var file = fileUploadControl.files[i];
        //test.push(file);
        var name = file.name; //This does *NOT* need to be a unique name
        console.log(name +" : "+file);
        //}
       console.log(test);
       //var t = [];
        //for(j=0; j<test.length; j++){
        var parseFile = new Parse.File(name, file);
        //t.push(parseFile);
        //var nw = t[i];
            parseFile.save().then(
                function() {
                    saveJobApp(parseFile);
                },
                function(error) {
                    alert("error");
                }
            );
        }
    }
});
</script>
</head>
<body>

  <form id="business_form" method="post">
    <table>
    <tr>
        <td>Image</td>
        <td><input type="file" id="profilePhotoFileUpload" multiple></td>
      </tr>
       <tr>
        <td><input type="button" id="submitId" value="submit"></td>
      </tr>
    </table>
  </form>
</body>

</html>

更新。使用上面的代码我尝试上传 3 张图片。 “1.jpg”“2.jpg”“3.jpg”

但它只上传 3.jpg,因为它是最后一张。 有什么想法吗?

最佳答案

我注意到最好在外部对函数本身进行循环,而不是在函数中进行循环。 如果你尝试这样做:

$('#submitId').on("click", function(e) {
    var fileUploadControl = $("#profilePhotoFileUpload")[0];
    console.log(fileUploadControl.length);
    for (i=0; i<3; i++){
            var file = fileUploadControl.files[i];
            var name = file.name; 
            PhotoUpload(name, file);
     }
    });

然后:

    function PhotoUpload(objname, objfile) {    
        console.log(objname);
        console.log(objfile);
            var parseFile = new Parse.File(objname, objfile);
                parseFile.save().then(
                    function() {
                        saveJobApp(parseFile);
                    },
                    function(error) {
                        alert("error");
                    }
                );
    } 

此外,如果要添加的不仅仅是 TreeMap 像,您只需添加以下内容:

for (i=0; i<fileUploadControl.files.length; i++)

关于javascript - 上传多个图像 parse.com javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35410232/

相关文章:

javascript - 制作一个不受 body 类影响的标签

android - NullPointerExcepetion Facebook sdk v4.5.0 启用 Proguard 时(尝试使用 Parse 库登录时)

javascript - 基于关系子对象获取对象 - 解析服务器

Android - 使用 ParseFacebookUtils.logIn 时 Facebook session 关闭

javascript - 以异步方式运行的 Canvas 绘图函数

javascript - 在新选项卡中打开页面时,JSON 或 AJAX 请求未显示在控制台中

javascript - 如何使用 jquery 获取 jqgrid 对象

javascript - 将附加参数传递给 Javascript 回调函数

ios - 像元高度作为图像高度

ios - 无法从解析服务器流式传输视频(PFFile)