JS 专有上传图片

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>上传demo</title>
</head>
<body>
<form action="{:U(‘Index/demo‘)}" method="post" enctype="multipart/form-data" id="form_data" name="form_data" target="iframe_data">
<input type="file" name="file" id="file" >
</form>
<img src="" id="img_data" name="img">
<iframe frameborder="0" name="iframe_data" id="iframe_data"></iframe>
<script>
// 获取元素
var file = document.getElementById(‘file‘);
var img_data = document.getElementById(‘img_data‘);
var form_data = document.getElementById(‘form_data‘);
var iframe_data = document.getElementById(‘iframe_data‘);
window.onload = function(){
file.onchange = function(){
var files = file.files[0];
var txt = /^image\/\w+$/;
if(!(txt.test(files.type))){
alert("图片类型不对");
return false;
}
// js 专有上传
var reader = new FileReader();
reader.readAsDataURL(files);
reader.onload = function(e){
// 显示img
img_data.setAttribute(‘src‘,this.result);
// 在js 上传成功时 做该form提交功能
form_data.submit();
}
}
iframe_data.addEventListener(‘load‘,function(){
// 获取iframe 内的数据 最后赋值给某个隐藏域
var text = iframe_data.contentWindow.document.body.innerHTML;
console.log(text);
});
}

</script>
</body>
</html>

时间: 2024-08-08 16:16:52

JS 专有上传图片的相关文章

js实现上传图片本地预览功能

js: /**     * 上传图片本地预览方法     * @param {Object} fileObj 上传文件file的id元素  fresh-fileToUpload      * @param {Object} previewObj 上传图片的预览id元素  fresh-send-preview-img     * @param {Object} localImg 预览图片的父层id元素  fresh-send-preview-imgvideo     */    fs.setIma

JS 实现上传图片

简介 上传是个老生常谈的话题了,多数情况下各位想必用的是uplodify,webUploader之类的插件,但近期团队定制组件的时候,笔者总觉得插件太重,许多功能用不到,那么就自己练手写了一个demo,并且支持图片拖拽排序.支持chrome 31及以上,IE就呵呵了.不过笔者的团队就是不用兼容IE,所以任性..另外,后端处理部分本篇不会详细讨论,请直接查看下面的源码. 单图上传 上传主要涉及 XMLHttpRequest Level 2的API:FormData.下面的脚本chrome 31版后

js压缩上传图片base64长度

im发送图片,现将图片压缩再上传 1) 调用 FileReader 的 reader.readAsDataURL(img); 方法, 在其onload事件中, 将用户选择的图片读入 Image对象. 2) 在image对象的 onload 事件中, 通过 canvas 的 canvas.getContext('2d') 的 drawImage 方法, 将Image 改变大小绘制到canvas上. 3) 通过 canvas.toDataURL("image/jpeg", 1); 方法,

js判断上传图片的文件大小,和宽高尺寸

今天在做图片上传的小功能,使用了一个kissy上传组件.很好奇它是如何在图片上传前,检测到图片的大小和尺寸的?我们来写个小实例实现一下吧 如何读取图片的size 首先,原生input file控件有个files属性,该属性是一个数组.数组中的元素有以下属性:lastModifiedDate,name,size,type,webkitRelativePath,如图: 这样的话,我们就可以检测到size. var fileData = file.files[0]; var size = fileDa

js限制上传图片类型和大小

<script type="text/javascript"> function checkFile(brandLogo){ var file=brandLogo.value; if(file==""){ alert("请上传图片"); return false; }else{ if(!/\.(gif|jpg|jpeg|png|GIF|JPG|PNG)$/.test(file)){ alert("图片类型必须是.gif,jp

js实现上传图片回显功能

用到h5技术 <img id="headimg" src="<%=path%>/resources/images/icon4.png" style="cursor:pointer;" height="90px;" width="95%;">                    <input id="headurladd" type="file&q

js判断上传图片宽高及文件大小

<input id="file" type="file"> <input id="Button1" type="button" value="button" onclick="check()"> window.check=function(){ var input = document.getElementById("file"); if(in

jsp上传图片实时显示

jsp代码 <div class="form-group" id="caseIma"> <label class="control-label">案例图片</label> <label class="btn btn-primary">选择图片 <input type="file" style="display: none" class

搭建一个Tomcat,作为图片服务器,异步上传图片

1.图片服务器Tomcat的设置  tomcat/conf/web.xml中内容更改,将tomcat设置为可以读写 <servlet>     <servlet-name>default</servlet-name>             <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>         <init-param>