带有图片预览功能的上传表单

本文介绍了一种实现图片上传即时预览的方法,并提供了多种样式的美化方案,适用于不同应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<html>
<head>
<meta charset="utf-8">
<title>图片上传</title>
<script>
function viewmypic(mypic,upfile) {
if(upfile.files && upfile.files[0])
{
mypic.style.display="";
//火狐下,直接设img属性
//mypic.src = upfile.files[0].getAsDataURL();

 //火狐7以上版本不能用上面的getAsDataURL()方式获取,需要一下方式  
mypic.src = window.URL.createObjectURL(upfile.files[0]);
}
else
{
//IE下
if (upfile.value){
mypic.src=upfile.value;
mypic.style.display="";
mypic.border=1;
}
}
}
</script>
</head>
<body>
<center>
<form >
<input name="upfile" type="file" id="upfile" size="40" onchange="viewmypic(showimg,this.form.upfile);" />
<br />
</form>
<img name="showimg" id="showimg" src="" style="display:none;" alt="预览图片" />
<br />
</div>
<div style="display:none">
</div>
</center>
</body>
</html>


上传图片的时候,可以直观看图片是否正确


上传多个:


<html>
<head>
<meta charset="utf-8">
<title>图片上传</title>
<script>
function viewmypic1(mypic,upfile1) {
if(upfile1.files && upfile1.files[0])
{
mypic.style.display="";
//火狐下,直接设img属性
//mypic.src = upfile1.files[0].getAsDataURL();

 //火狐7以上版本不能用上面的getAsDataURL()方式获取,需要一下方式  
mypic.src = window.URL.createObjectURL(upfile1.files[0]);
}
else
{
//IE下
if (upfile1.value){
mypic.src=upfile1.value;
mypic.style.display="";
mypic.border=1;
}
}
}
</script>
<script>
function viewmypic2(mypic,upfile2) {
if(upfile2.files && upfile2.files[0])
{
mypic.style.display="";
//火狐下,直接设img属性
//mypic.src = upfile2.files[0].getAsDataURL();

 //火狐7以上版本不能用上面的getAsDataURL()方式获取,需要一下方式  
mypic.src = window.URL.createObjectURL(upfile2.files[0]);
}
else
{
//IE下
if (upfile2.value){
mypic.src=upfile2.value;
mypic.style.display="";
mypic.border=1;
}
}
}
</script>
<script>
function viewmypic3(mypic,upfile3) {
if(upfile3.files && upfile3.files[0])
{
mypic.style.display="";
//火狐下,直接设img属性
//mypic.src = upfile3.files[0].getAsDataURL();

 //火狐7以上版本不能用上面的getAsDataURL()方式获取,需要一下方式  
mypic.src = window.URL.createObjectURL(upfile3.files[0]);
}
else
{
//IE下
if (upfile3.value){
mypic.src=upfile3.value;
mypic.style.display="";
mypic.border=1;
}
}
}
</script>
</head>
<body>
<center>
<form >
<input name="upfile" type="file" id="upfile1" size="40" onchange="viewmypic1(showimg1,this.form.upfile1);" /><br>
<input name="upfile" type="file" id="upfile2" size="40" onchange="viewmypic2(showimg2,this.form.upfile2);" /><br>
<input name="upfile" type="file" id="upfile3" size="40" onchange="viewmypic3(showimg3,this.form.upfile3);" /><br>
</form>
<img name="showimg1" id="showimg1" src="" style="display:none;" alt="预览图片" /><br>
<img name="showimg2" id="showimg2" src="" style="display:none;" alt="预览图片" /><br>
<img name="showimg3" id="showimg3" src="" style="display:none;" alt="预览图片" /><br>
<br />
</div>
<div style="display:none">
</div>
</center>
</body>
</html>


css input[type=file] 样式美化(input上传文件样式 )


http://blog.csdn.net/haibo0668/article/details/78499576



美化input按钮多图片上传带预览图片功能

<html>
<head>
<meta charset="utf-8">
<title>图片上传</title>
    <style>
		/*样式1*/
		.a-upload {
			padding: 4px 10px;
			height: 20px;
			line-height: 20px;
			position: relative;
			cursor: pointer;
			color: #888;
			background: #fafafa;
			border: 1px solid #ddd;
			border-radius: 4px;
			overflow: hidden;
			display: inline-block;
			*display: inline;
			*zoom: 1
		}
		
		.a-upload  input {
			position: absolute;
			font-size: 100px;
			right: 0;
			top: 0;
			opacity: 0;
			filter: alpha(opacity=0);
			cursor: pointer
		}
		
		.a-upload:hover {
			color: #444;
			background: #eee;
			border-color: #ccc;
			text-decoration: none
		}
		/*样式2*/
		.file {
			position: relative;
			display: inline-block;
			background: #D0EEFF;
			border: 1px solid #99D3F5;
			border-radius: 4px;
			padding: 4px 12px;
			overflow: hidden;
			color: #1E88C7;
			text-decoration: none;
			text-indent: 0;
			line-height: 20px;
		}
		.file input {
			position: absolute;
			font-size: 100px;
			right: 0;
			top: 0;
			opacity: 0;
		}
		.file:hover {
			background: #AADFFD;
			border-color: #78C3F3;
			color: #004974;
			text-decoration: none;
		}
    </style>
<script>
function viewmypic1(mypic,upfile1) {
if(upfile1.files && upfile1.files[0])
{
mypic.style.display="";
//火狐下,直接设img属性
//mypic.src = upfile1.files[0].getAsDataURL();

 //火狐7以上版本不能用上面的getAsDataURL()方式获取,需要一下方式  
mypic.src = window.URL.createObjectURL(upfile1.files[0]);
}
else
{
//IE下
if (upfile1.value){
mypic.src=upfile1.value;
mypic.style.display="";
mypic.border=1;
}
}
}
</script>
<script>
function viewmypic2(mypic,upfile2) {
if(upfile2.files && upfile2.files[0])
{
mypic.style.display="";
//火狐下,直接设img属性
//mypic.src = upfile2.files[0].getAsDataURL();

 //火狐7以上版本不能用上面的getAsDataURL()方式获取,需要一下方式  
mypic.src = window.URL.createObjectURL(upfile2.files[0]);
}
else
{
//IE下
if (upfile2.value){
mypic.src=upfile2.value;
mypic.style.display="";
mypic.border=1;
}
}
}
</script>

</head>
<body>
<center>
<form >
<a href="javascript:;" class="file"><input name="sfzfj[]" type="file" id="upfile1" size="40" onchange="viewmypic1(showimg1,this.form.upfile1);" />正面</a>
<a href="javascript:;" class="file"><input name="sfzfj[]" type="file" id="upfile2" size="40" onchange="viewmypic2(showimg2,this.form.upfile2);" />反面</a>
</form>
<img name="showimg1" id="showimg1" src="" style="display:none; width:20px" alt="预览图片" /><br>
<img name="showimg2" id="showimg2" src="" style="display:none;" alt="预览图片" /><br>
<img name="showimg3" id="showimg3" src="" style="display:none;" alt="预览图片" /><br>
<br />
</div>
<div style="display:none">
</div>
</center>
</body>
</html>



评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值