JS能实现实时检测input文本框的内容并用图片显示出来吗
javascript吧
全部回复
仅看楼主
level 4
peeppp 楼主
请教大侠,上传图片得到了图片的链接,自动填入文本框中,如何自动检测这个文本框里显示的图片地址在右边的预览图中显示出来?(图片地址不对就显示 yulan.png ,正确就直接显示图片)
2022年07月01日 03点07分 1
level 6
这个要发请求的,前端应该没有办法获取图片数据
2022年07月01日 05点07分 3
可以的,用file的API可以实现仅前端展示
2022年07月02日 13点07分
level 6
或者可以试试let img=new Image()
img . src = 输入框的字符串,然后用canvas drawImage来生成图片
2022年07月01日 05点07分 4
level 12
用onchange属性
xhr或者fetch发请求
2022年07月01日 07点07分 5
不会呀 \("▔□▔)/ [不要]
2022年07月02日 02点07分
level 12
onchange事件
2022年07月02日 07点07分 6
不会JS,不知道代码怎么写[]
2022年07月02日 09点07分
level 12
获取到input的值之后用直接改src属性?
2022年07月02日 07点07分 7
是的,上传得到图片路径直接显示在文本框中是没问题的,只需要在文本框得到图片地址后,用Img显示出来就行了,好几个上传的文本框,分别显示各自的图片预览
2022年07月03日 23点07分
level 12
inputObj.onchange=function(){
var value=this.value;
var ajax=new XMLHttpRequest();
ajax.onreadystatechange=function(){
if(this.readyState==4&&this.status==200)imgObj.src=value;
else imgObj.src='yulan.png'
}
ajax.open('GET',value,true);
ajax.send();
}
inputObj是你的写的input,imgObj是你的图片
2022年07月02日 11点07分 9
可以把ajax.open的第一个参数改成'HEAD'
2022年07月02日 11点07分
level 12
也可以把xhr的部分改成如下形式(大概)
fetch(value).then((resp) => {
if (this. status== 200) imgObj. src = value;
else imgObj. src = 'yulan.png';
})
2022年07月02日 11点07分 10
突然发现写错了… this -> resp
2022年07月03日 02点07分
level 13
简单的说,就是用ajax上传图片,后台保存成功后把地址传回前端,前端获取后同时赋值给img和input。另外也可以用file和canvas来实现不上传展示。至于用哪种,得看你的具体业务了
2022年07月02日 13点07分 11
这不就是我先回复楼主的方案吗[不高兴]
2022年07月03日 04点07分
@游戏内部人员 我没说不是啊,但也有纯前端的解决方案,具体情况得看业务的具体场景。
2022年07月03日 04点07分
@五天 具体情况是:现在能达到的就是已经通过上传按钮得到图片地址并写入文本框里了,只要实现在JS检测到对应文本框发生数据变化时旁边的yulan.png变成文本框里的数据就行,好几个图片上传就对应几个预览图各自显示
2022年07月04日 00点07分
@五天 比如第一个是上传身份证正面,上传成功后,第一个预览图就变成身份证正面图,第二个身份证背面上传成功就预览背面图
2022年07月04日 00点07分
level 8
上传图片的时候是不是能拿到图片文件的地址,或者这个文件的句柄(?)
2022年07月06日 02点07分 12
上传好后,图片地址自动填入文本框了,上面截图中的地址就是自动填入的,我想的是不动asp程序,在当前页用一个JS实现监测文本框内容变化,自动将这个地址付给后面图片的src并显示,其实就是看下上传预览,确保上传成功,增加一个可视性
2022年07月07日 00点07分
strJS=strJS & "parent.document.form1.wimg.value='"&SavePath&""&fileName&"';" & vbcrlf'
2022年07月07日 00点07分
level 8
可以参考这个自己改改,它监听的是文件状态,发生变化时拿到文件并显示(也可以在此时把它的路径显示出来)。
2022年07月07日 02点07分 14
/article/details/122054874
2022年07月07日 02点07分
https://blog.csdn.net/不要再抽贴了 weixin_43235307
2022年07月07日 02点07分
1