以下の関数を再構築するための最良の方法について、アドバイスをいただければ幸いです。私がやっていることは、ファイル リーダーを設定し、for ループでいくつかの div コンテンツを更新することです。基本的に、「alert(sparespacetofill);」という下部アラートを残していれば、私のコードは完全に機能します。テスト用ですが、このアラートを出すと、div のコンテンツが必要に応じて更新されません。関数の実行が完了する前に「reader.onload」関数が呼び出されないという問題は明らかですが、これを別の方法で構造化する方法に本当にこだわっています。
function setup_reader(file,number, sparespacetofill) {
var name = file.name;
var reader = new FileReader();
reader.onload = function(e) {
$('#' + sparespacetofill).children('img').attr('src',e.target.result);
if ($('#' + sparespacetofill).find("p").length <= 0 && sparespacetofill !='pic0' ) {
$('#' + sparespacetofill).append('<p id="deleteit">Delete<a></p>');
}
}
reader.readAsDataURL(file);
//alert(sparespacetofill);///ISSUE IS IN HERE IF I UNCOMMENT THIS OUT
return sparespacetofill;
}