0

我使用 Real Ajax Uploader ( http://www.albanx.com/ajaxuploader ) 将文件从基于 js/jQuery 的前端上传到基于 ASP.net 的服务器端函数 - 通过从文件中选择文件效果很好 -系统通过文件对话框。

但是现在我需要找到一种方法来设置文件(我知道文件的确切名称和本地路径)以通过 JS 函数自动上传,而不是通过单击“选择文件”并从文件中选择来手动选择它-对话。

我想我必须手动创建一个文件对象并将其推送到文件数组中(因为这个描述来获取字段信息:http ://www.albanx.com/ajaxuploader/examples.php?e=6 )但我无法管理设置文件并通过我的 js 函数上传

任何帮助都非常感谢提前谢谢

编辑:感谢您的回复这是使用设备相机拍照并将其推送到上传器的文件对象中的代码......到目前为止有效,但我不知道如何更新文件上传器,因为它似乎没有有一种方法可以做到这一点......所以文件在文件列表(file_list [0])中,我认为它需要的所有参数,但它没有出现在gui-file-list中

问候唐

<code>
// photo functions
function getPhoto(){
    navigator.camera.getPicture(onPhotoSuccess, onPhotoFail, { 
            quality: 50, 
            destinationType: Camera.DestinationType.NATIVE_URI
    }); 
    console.log("get photo ...");
}

function onPhotoSuccess(imageURI) {         
    console.log("photo taken ..." + imageURI);
    $('#imgUploadArea').ajaxupload('clear');
    var AU = $('#imgUploadArea').data('AU');
    var file_list = AU.files; //get all the file objects
    console.log("files: " + file_list.length);

    // get the file object 
    window.resolveLocalFileSystemURL(imageURI, function(fileEntry) {
                fileEntry.file(function(fileObj)  
    {                               
        fileuploadShow("input.caseFormText.caseFormPhotoBtn");      
        // add the image
        var capturedImg = new Object();
            capturedImg.status = 0;
            capturedImg.name = fileEntry.name;
            capturedImg.path = fileEntry.fullPath;
            capturedImg.size = fileObj.size;
            capturedImg.filetype = "image.jpeg";
            capturedImg.ext = "jpg";
            capturedImg.AU = AU;
            capturedImg.file = fileObj;

               console.log("set image object to upload: " + capturedImg.path);      

            file_list.push(capturedImg);

        console.log("files: " + file_list.length);
            console.log("imgUpload ... imagedata path: " + file_list[0].path);
            console.log("imgUpload ... imagedata name: " + file_list[0].name);
            console.log("imgUpload ... imagedata status: " + file_list[0].status);
                    console.log("imgUpload ... imagedata size: " + file_list[0].size);
            console.log("imgUpload ... imagedata filetype: " + file_list[0].filetype);
            console.log("imgUpload ... imagedata ext: " + file_list[0].ext);
            console.log("imgUpload ... imagedata file: " + JSON.stringify(file_list[0].file));

            console.log("file added to filelist: " + file_list.length);

            var files = $("#imgUploadArea").ajaxupload('getFiles');
            console.log(JSON.stringify(files));
            //$("#imgUploadArea").ajaxupload.('renderHtml');
            //$("#imgUploadArea").ajaxupload('start');

        });
    });
}

function onPhotoFail(message) {
    alert('Photo failed because: ' + message);
}
</code>

大学教师

4

0 回答 0