ここに私のウェブページに画像を表示する機能があります。しかし、問題は私が "src"の値を取得しようとしているときです(明らかに私はbase64でエンコードされたデータを取得しようとしています)。空の文字列がありますが、私のウェブサイト上の画像とsrcの値も見ることができます: Screenshot1入力タグから画像を表示しています。srcのデータを取得できません
ここは私の機能であり、console.log(reader.result)の結果は空の文字列です。
HTML:
<input id="avatar" type="file" onchange="previewFile()">
<img id="image" width="200px">
Javascriptを:私は、データを得ることができる方法
function previewFile() {
var preview = document.getElementById("image");
var file = document.querySelector('input[type=file]').files[0];
var reader = new FileReader();
reader.addEventListener("load", function() {
preview.src = reader.result;
}, false);
if (file) {
var el = reader.readAsDataURL(file);
}
console.log(reader.result);
}
?
ありがとうございました。
あなたは 'load'イベントを使用していますが、コードが非同期であるため、ファイルがロードされる前に実行されるので、イベントの内部で' console.log(..) 'を移動する必要があります。 – ext