我遇到了一个问题,我似乎无法从我在 Jquery 中运行的异步 JavaScript 方法中获取值。我的 Jquery 看起来像这样:
$(document).ready( function() {
$('#splash_image_upload').change( function() {
var file = this.files[0];
var blob_string = create_blob(file);
alert(blob_string);
});
我能够访问来自 'onload' 事件的值,但我似乎无法返回实际值。我试过这个:`
function create_blob(file) {
var reader = new FileReader();
reader.onload = (function() { return function(e) { return e.target.result; }; })();
reader.readAsDataURL(file);
}
每次我执行这个函数时,'blob_str' 变量的值都是 'undefined' 大概是因为赋值是在函数完成之前完成的。我不太确定如何解决这个问题。有没有办法可以从这个函数返回这个值?