Javascript 在上传之前预览多幅图像

Javascript 在上传之前预览多幅图像,javascript,jquery,preview,Javascript,Jquery,Preview,对于第一个输入,它工作得很好,但对于第二个输入就不行了。它不更新第二个,而是更新第一个。如何使用相同的函数分隔这两个输入预览 函数readURL(输入){ if(input.files&&input.files[0]){ var reader=new FileReader(); reader.onload=函数(e){ $('#blah').attr('src',e.target.result); } reader.readAsDataURL(input.files[0]);//转换为base

对于第一个输入,它工作得很好,但对于第二个输入就不行了。它不更新第二个,而是更新第一个。如何使用相同的函数分隔这两个输入预览

函数readURL(输入){
if(input.files&&input.files[0]){
var reader=new FileReader();
reader.onload=函数(e){
$('#blah').attr('src',e.target.result);
}
reader.readAsDataURL(input.files[0]);//转换为base64字符串
}
}

首先,ID应该是统一的,因此将img元素的“load”设置为“load1”和“load2”。
您应该通过输入来区分输出目标。
$('#blah').attr('src',e.target.result)始终更新元素“#blah”。
因此,在readURL()中添加一个指定输出目标的参数,并对其进行修改以更新

    function readURL(input, target) {
      if (input.files && input.files[0]) {
        var reader = new FileReader();
    
        reader.onload = function(e) {
          $(target).attr('src', e.target.result);
        }
    
        reader.readAsDataURL(input.files[0]); // convert to base64 string
      }
    }

首先,ID应该是统一的,因此将img元素的“load”设置为“load1”和“load2”。
您应该通过输入来区分输出目标。
$('#blah').attr('src',e.target.result)始终更新元素“#blah”。
因此,在readURL()中添加一个指定输出目标的参数,并对其进行修改以更新

    function readURL(input, target) {
      if (input.files && input.files[0]) {
        var reader = new FileReader();
    
        reader.onload = function(e) {
          $(target).attr('src', e.target.result);
        }
    
        reader.readAsDataURL(input.files[0]); // convert to base64 string
      }
    }


什么输入,什么功能?请创建一个什么输入,什么函数?请创建一个