【发布时间】:2023-11-29 05:57:01
【问题描述】:
我正在制作一个文件上传器,我需要获取每个选择的图像的 ID,以便以后删除它们,知道吗?
我正在尝试使用“imgn”,但它不起作用。
var imgn=0;
function readURL(file) {
var reader = new FileReader();
var image = new Image();
reader.readAsDataURL(file);
imgn++;
reader.onload = function (e) {
image.src = e.target.result;
image.onload = function() {
$('#imgpre').append('<p id="imgnum'+imgn+'"><img src="'+ this.src +'" width="80px"><input type="button" value="Remove" onclick="removeimg('+imgn+');"></p>');
}
image.onerror= function() {
alert('Invalid file type: '+ file.type);
}
}
}
$("#imgsel").change(function(e){
if(this.disabled) return alert('File upload not supported!');
var F = this.files;
if(F && F[0]) for(var i=0; i<F.length; i++) readURL( F[i] );
});
function removeimg(rnum) {
jQuery('#imgnum'+rnum).remove();
}
【问题讨论】:
-
您将问题标记为 PHP,因此您可以使用
uniqid() -
it's not working不是正确的问题陈述 -
@ForceBru 我试过了,但总是为所有图像提供相同的数字
-
@KelsonBatista,然后使用简单的随机数生成器和散列函数。或者计算所有已上传的文件并对数字进行哈希处理,这样哈希值将始终是唯一的。
-
@charlietfl 实际上它可以工作,但不是正确的方法,它总是给我选择的所有多个图像的相同编号,所以如果它们是相同的编号,则不可能为每个图像提供唯一的 id跨度>
标签: jquery forms dom input filereader