js实现上传图片及时预览

上传前:

选择图片后:


公司前辈已经写好的。稍微修改拿来用。现在记录一下。

jsp:

<input type="hidden" name="xxxVO.logoPath" id="imgFileFullPath" value='<s:property value="xxxVO.logoPath"/>'>
<div class="">
								<h4>logo图片</h4>
							</div>
							<div class="" id="picId" title="点击选择图片" οnclick="$('#fileId').click();">
								<s:if test="xxxVO.logoPath!=null&&xxxVO.logoPath!=''">
									<img width="300px" id="preview" height="125px" src='<%=path%>/<s:property value="xxxVO.logoPath"/>'>
								</s:if>
								<s:else>
									<img src="<%=path%>/img/addimg.jpg" />
								</s:else>
							</div>
							<input hidden="true" id="fileId" type="file" οnchange="javascript:setImagePreview();" name="imgFile" accept="image/*" />
							<input type="hidden" id="imgFileName" name="imgFileName" />

js:

//图片
		function setImagePreview() {
			document.getElementById("imgFileName").value = document
					.getElementById("fileId").value;
			var docObj = document.getElementById("fileId");
			var picDivHtml = " ";
			// 更改失败,显示原有的图片
			var logoPath = $("#imgFileFullPath").val();
			if (logoPath && logoPath != '') {
				picDivHtml = '<img width="300px" id="preview" height="125px" src="' +  logoPath + '">';
			}

			if (docObj.files && docObj.files[0]) {
				//计算文件大小 
				var size = Math.floor(docObj.files[0].size / 1024);
				if (size > 2 * 1024) {
					alert("文件限制最大为2M");
				} else {
					picDivHtml = '<img width="300px" height="125px" id="preview" src="'
							+ window.URL.createObjectURL(docObj.files[0])
							+ '">';
				}
			}

			document.getElementById("picId").innerHTML = picDivHtml;
			return true;
		}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值