Javascript 上载图像并更改现有图像的源

Javascript 上载图像并更改现有图像的源,javascript,jquery,Javascript,Jquery,我需要上传一张图片,并将现有图片的来源设置为上传的图片 图像已上载,但新源不起作用 <img class='avat' id='avat' src='ph/avat.jpg' alt='img'> <input type='file' id='inpfile' accept=".jpg"> 您可以与组合以获取文件并将其替换为头像 使用inpfile在本地计算机上选择文件时,将触发更改事件 在这种情况下,您需要测试是否有一个文件(用户选择了一个文件):

我需要上传一张图片,并将现有图片的来源设置为上传的图片
图像已上载,但新源不起作用

<img class='avat' id='avat' src='ph/avat.jpg' alt='img'>
<input type='file' id='inpfile' accept=".jpg">
您可以与组合以获取文件并将其替换为头像

使用inpfile在本地计算机上选择文件时,将触发更改事件

在这种情况下,您需要测试是否有一个文件(用户选择了一个文件):

如果文件存在,您可以实例化FileReader(读取文件所需),并向其添加加载端处理程序:

var reader  = new FileReader();
    reader.onloadend = function () {
文件完全加载后,您可以更改化身的属性:

imgavat.attr('src', reader.result);
为了启动此异步过程,您需要将文件作为数据url读取,以便您可以更新化身src图像:

reader.readAsDataURL(this.files[0]);
片段:

var imgavat=$('#avat');
var inpfile=$('#inpfile');
inpfile.on('change',function(){
如果(this.files[0]){
var reader=new FileReader();
reader.readAsDataURL(this.files[0]);
reader.onloadend=函数(){
imgavat.attr('src',reader.result);
};
}
});


响应中的
数据的值是多少?@RRK-
avat/1.jpg
页面中是否有id为
avat
的其他元素?@RRK-不,页面上只有一个图像-头像的快捷方式请解释一下,好吗?上传图像的代码在哪里?我需要它被上传到一个特定的文件夹。我试图将您的代码放入我的代码的
success
部分并获得成功error@yes,我明白了,谢谢。现在可以了。你知道我以前的代码为什么不起作用吗?@qadenza Write/。。。上传图片的代码,我会看看,所以我可以说你更多…请看我的帖子更新。这是完整的js代码。如果您需要php代码-没问题,但基本上它是可以工作的-上传的图像是there@qadenza你能添加console.log(data)的值吗;?谢谢
imgavat.attr('src', reader.result);
reader.readAsDataURL(this.files[0]);