EXTJS图片上传预览(含本地上传前预览和服务器图片预览)
2013-11-20 11:23
513 查看
创建EXTJS组件
本地上传前预览
服务器图片预览
path形式:http://192.168.9.6/em/keer/emassage/1.jpg
//生成messagePanel createMessagePanel:function(){ return Ext.create('Ext.panel.Panel',{ itemId:'compPanel', layout:'anchor', autoScroll:true, border:false, items: [ {layout:'column',border:false,anchor:'-20',items:[ { columnWidth:1, layout:'form', border:false, items:[{ xtype: 'textfield', itemId: 'upload_image', id: 'upload_image', name: 'file', inputType: 'file', fieldLabel: '上传照片', emptyText : '选择文件存放路径', // allowBlank: false, listeners: { 'render': Ext.bind(this.onShowImg, this) } }] } ]}, {layout:'column',border:false,anchor:'-20',items:[ { columnWidth:.25, layout:'form', border:false, items:[{ xtype: 'panel', border:false }] }, { columnWidth:.75, layout:'form', border:false, items:[{ xtype: 'box', itemId: 'imageShow_box', autoEl: { width: 100, height: 100, tag: 'img', type: 'image', src: 'images/nofoundimage.png', style: 'filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale);width:160px;height:160px;text-align:center;', complete: 'off' } }] } ]}, {layout:'column',border:false,anchor:'-20',items:[ { columnWidth:1, layout:'form', border:false, items:[{ xtype:'textarea', width:'100%', itemId:'content', fieldLabel:'内容', name:'content', height:75 }] } ]} ] }); },
本地上传前预览
onShowImg: function(){//图片预览 var formPanel = this.formPanel; var uploadImage = formPanel.down('textfield[itemId=upload_image]'); uploadImage.on('change', function(e, t, eOpts){ //上传图片类型,在前台的拦截 var img_reg = /\.([jJ][pP][gG]){1}$|\.([jJ][pP][eE][gG]){1}$|\.([gG][iI][fF]){1}$|\.([pP][nN][gG]){1}$|\.([bB][mM][pP]){1}$/; //得到选择的图片路径 var path = uploadImage.getValue(); if(path!=null && !Ext.isEmpty(path)) { var url = "file://" + path; //是否是规定的图片类型 if (img_reg.test(url)) { var imageShow_box = formPanel.down('box[itemId=imageShow_box]'); //预览的图片框对象 if (Ext.isIE) {//IE浏览器 var imageShow_box_dom = imageShow_box.getEl().dom; imageShow_box_dom.src = Ext.BLANK_IMAGE_URL;// 覆盖原来的图片 imageShow_box_dom.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = url; } else { var file = uploadImage.inputEl.dom.files[0]; var imageShow_box_dom = imageShow_box.getEl().dom; imageShow_box_dom.src = window.URL.createObjectURL(file); } } else { Ext.Msg.alert('提示','请选择图片类型的文件!'); } } }, this); }
服务器图片预览
path形式:http://192.168.9.6/em/keer/emassage/1.jpg
if (Ext.isIE) {//IE浏览器 imageShow_box_dom.src = Ext.BLANK_IMAGE_URL;// 覆盖原来的图片 imageShow_box_dom.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = path; } else { imageShow_box_dom.src = path; }
相关文章推荐
- JS实现本地图片在线图片预览无需上传服务器
- 浏览器本地预览图片并Ajax上传到服务器(谷歌火狐 ,IE不兼容)
- js读取本地图片进行预览,上传服务器
- js读取本地图片进行预览,上传服务器
- js 读取本地图片进行预览,上传服务器
- IE7 预览待上传的本地图片(Image Upload Preview) ,放上服务器浏览就不行了。什么破IE7,这个都不支持了
- js读取本地图片进行预览,上传服务器
- 网页上传图片时,直接本地预览无需上传服务器
- JavaScript实现图片本地预览功能【不用上传至服务器】
- HTML5本地拖拽上传实现图片预览功能的实践总结
- html5以及jQuery实现本地图片上传前的预览
- JS兼容各个浏览器的本地图片上传即时预览效果\、
- 关于IE 中上传图片时用JavaScript预览本地图片的功能失效
- 小程序从本地相册选择图片或使用相机拍照wx.chooseImage上传后预览并可以识别图中二维码
- 兼容ie6、ie7、ie8 和FF的本地上传图片预览,并客户端判断文件大小和文件格式
- asp.net 上传图片时,预览本地图片,支持IE6、IE8、火狐
- JAVA web 上传图片至服务器(本地Linux服务器与Fastdfs)
- 关于IE6和IE7关闭窗口时提示和不提示以及上传图片前的本地预览解决办法
- 实现本地图片预览上传的功能
- 图片本地上传预览