Flex + .Net从本地选择一个图片上传到服务器
<mx:TextInput id="TxtFileName" editable="false" width="200"/>
<mx:Image id="btnBrowser" toolTip="Browser" buttonMode="true" click="fileBrowser(event)"
source="@Embed(source='../assets/icon/icon_browser.png')"/>
<mx:Button id="btnUpload" label="Upload" buttonMode="true" click="addAttachment(event)" skin="@Embed(source='../assets/skin/btn_skin.gif')" width="80" height="23" />
新建一个 textiput存储显示文件名和image来做button选取本地图片文件。
触发的事件代码
private var curfile:FileReference=new FileReference();
private var browerFlag:Boolean=false; private function fileBrowser(event:Event):void
{
var imageTypes:FileFilter = new FileFilter("Images(*.jpg,*.jpeg,*.png,*.gif,*.bmp,*.pdf,*.tif)", "*.jpg;*.jpeg;*.png;*.gif;*.bmp;;*.pdf;*.tif");
curfile.browse([imageTypes]);
}
程序initialize的时候为curfile加监听事件initialize="init()
private function init():void
{
curfile.addEventListener(Event.SELECT,addInTextinput);
}
private function addInTextinput(event:Event):void
{
TxtFileName.text = curfile.name;
}
Button Upload的处理事件
private function addAttachment(event:Event):void
{
if(!browerFlag)
{
return;
}
if(!curfile.type)
{
browerFlag=false;
TxtFileName.text="";
Alert.show(CONSTANT.VoidFileType,CONSTANT.PROJNAME,Alert.OK);
return;
}
var type:String=curfile.type.toLowerCase();
if(type&&type!='.jpg'&&type!='.png'&&type!='.bmp'&&type!='.gif'&&type!='.pdf'&&type!='.tif')
{
browerFlag=false;
TxtFileName.text="";
Alert.show(CONSTANT.VoidFileType,CONSTANT.PROJNAME,Alert.OK);
return;
}
/* if(curfile.size>4194304) */
if(curfile.size>10485760)
{
browerFlag=false;
TxtFileName.text="";
Alert.show(CONSTANT.AttachmentMax,CONSTANT.PROJNAME,Alert.OK);
return;
} //---upload handler--------------
var url:String = "UploadFileHandler.aspx?TempFileID="+SysParm.expInfo.ExpenseGUID+"&StaffID="+SysParm.curStaffInfo.StaffID;
var reqUrl:URLRequest = new URLRequest(url); curfile.upload(reqUrl); }
怎加两个上传结束以及捕捉错误的事件监听。
private function init():void
{
curfile.addEventListener(Event.SELECT,addInTextinput);
curfile.addEventListener(Event.COMPLETE,uploadComplete);
curfile.addEventListener(IOErrorEvent.IO_ERROR,uploadError);
}
private function uploadComplete(event:Event):void
{
browerFlag=false;
ExpenseFunction.removeBusy();
Alert.show(CONSTANT.UploadSuccess,CONSTANT.PROJNAME,Alert.OK,null,refreshAttachmentHandler);
}
private function uploadError(ioError:IOErrorEvent):void
{
browerFlag=false;
TxtFileName.text="";
Alert.show(CONSTANT.UploadFail,CONSTANT.PROJNAME);
} private function refreshAttachmentHandler(event:CloseEvent):void
{
TxtFileName.text="";
browerFlag=false; }
Flex + .Net从本地选择一个图片上传到服务器的更多相关文章
- 从系统相册中选择GIF图片上传到服务器
-(void)assetPickerController:(ZYQAssetPickerController *)picker didFinishPickingAssets:(NSArray *)as ...
- 我需要在Web上完成一个图片上传的功能
我需要在Web上完成一个图片上传的功能. 这个页面需要能从手机中选择图片上传. 首先,这个页面是从微信上面触发的,所以修改了微信的的入口地址,增加了身份识别号作为传参. 跳转到页面的时候,页面先检查身 ...
- MVC图片上传、浏览、删除 ASP.NET MVC之文件上传【一】(八) ASP.NET MVC 图片上传到服务器
MVC图片上传.浏览.删除 1.存储配置信息 在web.config中,添加配置信息节点 <appSettings> <add key="UploadPath" ...
- 使用canvas给图片添加水印, canvas转换base64,,canvas,图片,base64等转换成二进制文档流的方法,并将合成的图片上传到服务器,
一,前端合成带水印的图片 一般来说,生成带水印的图片由后端生成,但不乏有时候需要前端来处理.当然,前端处理图片一般不建议,一方面js的处理图片的方法不全,二是有些老版本的浏览器对canvas的支持度不 ...
- php form 图片上传至服务器上
本文章也是写给自己看的,因为写的很简洁,连判断都没有,只是直接实现了能上传的功能. 前台: <form action="upload.php" method="PO ...
- VUE2.0+VUE-Router做一个图片上传预览的组件
之前发了一篇关于自己看待前端组件化的文章,但是由于学习和实践的业务逻辑差异,所以自己练习的一些demo逻辑比较简单,打算用vue重构现在公司做的项目,所以在一些小的功能页面上使用vue来做的,现在写的 ...
- Express+MySQL实现图片上传到服务器并把路径保存到数据库中
demo准备:mysql5.7.20 express4.0 处理图片文件的中间件Multer 先搭建服务器并展示html页面 const express = require("express ...
- 根目录97 <input file>标签,把图片上传到服务器(跟增删改查一起实现)
首先来个简单的html页面: enctype="multipart/form-data" encoding="multipart/form-data" acti ...
- ckeditor如何能实现直接粘贴把图片上传到服务器中?
在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper. 通过知乎提供的思路找到粘贴的原理,通过TheViper找 ...
随机推荐
- 搭建ssm环境
在eclipse下搭建ssm框架. 1.新建maven项目. 2.添加jar包依赖 3.修改web.xml配置文件 <?xml version="1.0" encoding= ...
- Hadoop详细安装步骤
hadoop安装:(分布式模式)参考地址:http://dblab.xmu.edu.cn/blog/install-hadoop/ http://dblab.xmu.edu.cn/blog/insta ...
- Kerberos 互信免登陆
第一步:机器加互信 将机器A的Kerberos name加到机器B的~/.k5login中,同时将机器B的Kerberos name加到机器A的~/.k5login中 例如:host/bjm6-193 ...
- Pandas基本功能之选取索引和过滤
索引.选取和过滤 大部分的查询用法 类型 说明 obj[val] 选取DataFrame的单个列或一组列 obj.ix[val] 选取DataFrame的单个行或一组行 obj.ix[:,val] 选 ...
- MyEclipse2014安装aptana插件
1. 2. aptana插件下载地址 链接: https://pan.baidu.com/s/1sloiAK1 密码: a1nh 3. 4. 确认是否安装成功
- struts2前后台传值的三种方法
原文地址: http://laokaddk.blog.51cto.com/368606/1340816 多的不说,直接上代码; struts.xml代码: <?xml version=" ...
- vue element-ui怎样提炼一个自己写的js当作公共js
vue element-ui怎样提炼一个自己写的js当作公共js请教一下各位大神,我刚刚触摸vue element-ui几天,写的一个清晰检索的input框,现在需当作项目公共的部分,可遭需的html ...
- 原生js,通过document.getElementByClassName获取元素的索引值
let itemList = document.getElementsByClassName('sky-item') // 一行所有元素 let index = 0 for(let i = 0; i& ...
- 有关vim的一些命令
所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在. 但是目前我们使用比较多的是 vim 编辑器. vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正 ...
- @RequestParam使用须知
--------------------------siwuxie095 @RequestParam 使用须知 使用 @Requ ...