上传前预览图片

时间:2016-09-20 06:27:52

标签: javascript jquery

我有一张桌子。每行有一个用于图像上传的单元格。我想显示预览。为此我写了下面的代码:

var cell8 = row.insertCell(6);
var t8 = document.createElement("input");
t8.type = "file";
t8.id = "img" + index;
t8.name = "img" + index;

var a = document.getElementById('blah_img' + index + '');
a.src = window.URL.createObjectURL(this.files[0]);
t8.onchange = a.src;
cell8.appendChild(t8);

var oImg = document.createElement("img");
oImg.setAttribute('src', 'noimg.png');
oImg.setAttribute('alt', 'your image');
oImg.setAttribute('height', '100');
oImg.setAttribute('width', '100');
oImg.id = "blah_img" + index;
cell8.appendChild(oImg);

运行它时会给我一个错误:

  

未捕获的TypeError:无法读取属性' 0'未定义的。

我的代码有什么问题?请帮忙。

1 个答案:

答案 0 :(得分:0)

最有可能的是,this.filesundefined。因此,它给出了错误。 而不是this.files[0],请尝试t8.files[0]

Chobi是一个图像处理库,以纯Javascript实现,我将其设计为更容易实现。你也可以检查一下