遇到了上传文件的问题,结合之前使用的swfUpload,找到了一个jquery插件uploadify不刷新上传的文件,写了一篇博客分别记录了这两个的实现方法
swfUpload导入SwfUpload的开发包并添加js引用,引用swfUpload.js和handler.js文件。如果你不懂swfUpload,有什么问题,可以查看这篇文章的页面初始化。
在handler.js文件中修改成功上传的事件,serverData就是服务器端的响应
Uploadify导入uploadify开发包,从官网下载,官网文档,中文文档,官网示例添加js和css引用,jquery.uploadify.js,uploadify.css
(注意:css中引用的uploadify-cancel.png图片文件路径可能不正确,您可以在uploadify.css文件中自行更改)
页面初始化
当页面初始化时,可以指定许多设置,并且可以重载成功上传的事件。数据代表服务器的响应
服务器端上传处理程序
//uploadify初始化$(函数(){ $(“# file _ upload”).uploadify({ //指定swf ' swf ' : '/uploadify/uploadify。swf ',//服务器端处理程序上传程序: '/Admin/uploadFileHandler。ashx ',//按钮文本按钮文本: '上传附件', //文件类型fileTypeExts: ' * .zip*。rar*。文件*。docx*。xls*xlsx ',onuploadssuccess : onfiulploadssuccess });});函数OnFileUploadSuccess(文件、数据、响应){ //服务器端响应如果(数据=='noPermission') { alert('没有上传权限');}如果(数据=='错误){ alert('上传失败');} else if (response) { alert('上传成功~~~');$(“# filePath”).val(数据);} }uploadify///summary///上传文件////summarypublic类uploadfile处理程序: IHttpHandler,irequissessionstate { public void ProcessRequest(HttpContext context){ context .响应。内容类型='文本/纯文本;//验证上传权限如果(上下文。会话['用户']==空){上下文。响应。写入("无权限");语境。响应。end();返回;}尝试{ //获取上传文件//文件数据是客户端已经定义好的,如果想要更改,更改射流研究…文件中的配置https tedfile image _ upload=context .请求文件['文件数据'];//获取文件扩展名字符串文件文本=系统IO。路径。getextension(image _ upload .文件名).toLower();//验证文件扩展名是否符合要求,是否是允许的图片格式if(!文件类型. is allow ed(FileExt)){ return;} //当前时间字符串字符串时间字符串=日期时间.现在。ToString(' yyymmdhmmssfff ');//保存虚拟路径构建字符串路径='/Upload/' timeString文件扩展名;//获取、构建要上传文件的物理路径字符串服务器路径=上下文服务器。MapPath('~/'路径);//保存图片到服务器图像_上传。另存为(服务器路径);//输出保存路径语境。响应。写入(路径);} catch(异常ex) { context .响应。写入("错误");//记录日志新通用LogHelper(类型为(上传文件处理程序).错误(例如);} } public bool IsReuse { get { return false;} } }公共静态类文件类型{私有静态Liststring allow FileTypes=new Liststring();//获取允许json配置文件私有静态字符串jsonFilePath=Common .路径助手。MapPath(' ~/allowedfiletypes。JSON’);///摘要///允许的文件类型////汇总公共静态list string AllowedFileTypes { get { return AllowedFileTypes;}设置{ allowedFileTypes=value} } ///摘要///静态构造方法////摘要静态文件类型(){ LoadFileTypeFromjson();} ///摘要///从json文件中读取允许上传的文件类型////摘要私有静态void loadfile typesfromjson(){ 0字符串类型=文件.readall文本(jsonFilePath);允许文件类型=通用ConverterHelper .jsontobjectliststring(类型);} ///摘要///当添加允许文件类型时,更新到json文件////summary public static void文件typesto JSON(){ 0字符串类型=普通.转换器助手。ObjectToJson(AllowedFileTypes);文件writeltext(JSonfilepath,类型);} ///摘要///新增允许上传文件扩展名////summary////param name=' new filetype '/param public static void AddNewFileType(字符串newFileType) { AllowedFileTypes .添加(NewFileType);文件类型to JSON();} ///摘要///判断某种文件类型是否允许上传////summary///param name=' FileExt '文件扩展名/param /返回是否允许上传代码真/代码允许上传/返回公共静态bool IsAllowed(字符串文件扩展名){ foreach(AllowedFileTypes中的字符串项){ if(文件扩展名)。equals(FileExt)){ 0返回真实} }返回false}}以上所述就是本文的全部内容了,希望大家能够喜欢。