我使用这个脚本上传我的图像文件:
http://jsfiddle.net/eHmSr/
$('.uploader input:file').on('change',function() {
$this = $(this);
$('.alert').remove();
$.each($this[0].files,function(key,file) {
$('.files').append('<li>' + file.name + '</li>');
data = new FormData();
data.append(file.name,file);
$.ajax({
url: $('.uploader').attr('action'),type: 'POST',dataType: 'json',data: data
});
});
});
但是当我点击上传按钮时,JavaScript控制台会返回此错误:
Uncaught TypeError: Illegal invocation
你可以帮我吗?
解决方法
jQuery处理数据属性并将值转换为字符串。
Adding processData: false到你的选项对象修复错误,但我不知道如果它修复了这个问题。
演示:http://jsfiddle.net/eHmSr/1/