【发布时间】:2015-09-01 13:04:04
【问题描述】:
我需要使用移动应用程序将照片上传到服务器。我使用以下代码读取文件的地方。
if (filesSelected.length > 0)
{
alert("lenth great than zero");
var fileToLoad = filesSelected[0];
var fileReader = new FileReader();
fileReader.onload = function(fileLoadedEvent) {
var srcData = fileLoadedEvent.target.result; // <--- data: base64
var newImage = document.createElement('img');
newImage.src = srcData;
base64_string = newImage.outerHTML;
alert(srcData + "srouce data now");
}
fileReader.readAsDataURL(fileToLoad);
*** SERVICE CALL Comes Here ***
}
从代码 filesSelected.length 始终返回大于零 (0) 的值(即,如果图像可用)并警告“lenth 大于零”并且不警告 srcData +“srouce data now” .
我猜 fileReader 没有在它之后调用/调用。那么任何人都可以帮助我解决这个问题。
如果您还需要代码中的任何内容,请告诉我。
【问题讨论】:
-
您使用的是哪个版本。文件API已更新。你可以试试 fileReader.onloadend 而不是 fileReader.onload。如果这不起作用,请告诉我们 phonegap 版本?
-
manifest.xml中是否有读/写权限
-
@Akki619,现在让我试试 fileReader.onloadend 并回复你
-
@SheraliTurdiyev,是的 manifest.xml 有它的权限
-
@Akki619,onloadend 为我工作,但 var srcData = fileLoadedEvent.target.result;结果我 srcData 的空值...
标签: android jquery phonegap-plugins filereader