个人博客 地址:http://www.wenhaofan.com/article/20180808210417

jQuery.extend({

uploadUtil:function(){

}

});

/**

* 上传file form

*/

$.uploadUtil.prototype.uploadFileForm=function(paras){

if(this.uploadServerUrl==undefined){

throw "upload.js->uploadServerUrl not defined"

}

$.ajax({

url:this.uploadServerUrl,     //上传图片请求的路径

method:'POST',            //方法

data:paras.dataForm,                 //数据

processData: false,        //告诉jQuery不要加工数据

dataType:'json',

contentType: false,

success: function(data) {

paras.success(data);

},

error:function(data){

if(paras.erro|| typeof paras.error  === "function"){

paras.erro(data);

}

}

});

}

/**

* 上传js file文件

*/

$.uploadUtil.prototype.uploadFile= function (paras) {

var dataForm=new FormData();

var file=paras.file;

var resultFile;

//如果是jquery对象 且类型为input file 则抛出异常

if(this.isJquery(file)&&this.isFileInput(file)){

resultFile=$(file).get(0).files[0];

}else{

resultFile=file;

}

dataForm.append('upfile',paras.file);

paras.dataForm=dataForm;

this.uploadFileForm(paras);

}

/**

* 判断是否是file input

*/

$.uploadUtil.prototype.isFileInput=function(obj){

var tagName=$(obj)[0].tagName;

return tagName=="INPUT"&&obj.attr("type").toLowerCase=="file";

}

/**

* 判断是否是jquery对象

*/

$.uploadUtil.prototype.isJquery=function(obj){

return obj instanceof jQuery;

}

$.uploadUtil.prototype.uploadServerUrl=undefined;

/**

* 设置上传路径

*/

$.uploadUtil.prototype.setUploadServerUrl=function(uploadServerUrl){

this.uploadServerUrl=uploadServerUrl;

}

/**

* 获取上传路径

*/

$.uploadUtil.prototype.getUploadServerUrl=function(){

return this.uploadServerUrl;

}

js上传文件工具类的更多相关文章

  1. java上传文件工具类

    这个是之前整理之前所学时与使用java向邮箱发送邮件一块找到的,一起贴出来供大家参考: import java.awt.image.BufferedImage; import java.io.File ...

  2. java ftp上传文件 工具类

    package com.learning.spboot.utils; import com.jcraft.jsch.*; import org.apache.commons.net.ftp.FTPCl ...

  3. FTP上传-封装工具类

    import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import ja ...

  4. ftp上传下载工具类

    package com.taotao.utils; import java.io.File; import java.io.FileInputStream; import java.io.FileNo ...

  5. 使用ajaxfileupload.js上传文件

    一直以来上传文件都是使用form表单上传文件,也看到过有人使用js上传文件,不过看起来蛮简单的也就没有怎么去理会.今天突然要使用这种方式上传文件,期间还遇到点问题.因此就记录下来,方便以后遇到这样的问 ...

  6. js 上传文件后缀名的判断 var flag=false;应用

    js 上传文件后缀名的判断  var flag=false;应用 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional// ...

  7. js上传文件带参数,并且,返回给前台文件路径,解析上传的xml文件,存储到数据库中

    ajaxfileupload.js jQuery.extend({ createUploadIframe: function(id, uri) { //create frame var frameId ...

  8. atitit.javascript js 上传文件的本地预览

    atitit.javascript js 上传文件的本地预览 1. .URL.createObjectURL  1 1.1. 吊销所有使用 URL.createObjectURL 而创建的 URL,以 ...

  9. Spring MVC文件上传下载工具类

    import java.io.File; import java.io.IOException; import java.io.UnsupportedEncodingException; import ...

随机推荐

  1. 「Spark」Spark SQL Thrift Server运行方式

    Spark SQL可以使用JDBC/ODBC或命令行接口充当分布式查询引擎.这种模式,用户或者应用程序可以直接与Spark SQL交互,以运行SQL查询,无需编写任何代码. Spark SQL提供两种 ...

  2. idea如何做到多模块开发项目 收藏整理

    idea如何做到多模块开发项目 <packaging>pom</packaging>是什么意思? idea 快捷键汇总

  3. C#_.net core 3.0自定义读取.csv文件数据_解决首行不是标题的问题_Linqtocsv改进

    linqtocsv文件有不太好的地方就是:无法设置标题的行数,默认首行就是标题,这不是很尴尬吗?   并不是所有的csv文件严格写的首行是标题,下面全是数据,我接受的任务就是读取很多.csv报表数据, ...

  4. Eclipse中Git图标表示内容

    Eclipse中->属性->Team->Git->Label Decorations

  5. Electron – 基础学习(2): 项目打包成exe桌面应用 之electron-packager

    项目创建完成,启动正常,接下来就是项目打包了.将测试Demo打包成exe桌面应用,点击exe文件,运行项目. 书接上文,创建项目有三种方式 Git拷贝.直接创建:通过electron社群提供的命令行工 ...

  6. 论文阅读笔记(十八)【ITIP2019】:Dynamic Graph Co-Matching for Unsupervised Video-Based Person Re-Identification

    论文阅读笔记(十七)ICCV2017的扩刊(会议论文[传送门]) 改进部分: (1)惩罚函数:原本由两部分组成的惩罚函数,改为只包含 Sequence Cost 函数: (2)对重新权重改进: ① P ...

  7. 基于单片机的心型LED灯的设计与实现

    #include<reg51.h> #include<intrins.h> #define char unsigned char #define unit unsigned i ...

  8. SpringBoot学习- 11、更好用的代码生成工具EasyCode

    SpringBoot学习足迹 之前的mybatis代码生成工具无法自定义模板,找了一个可以自定义模板的插件,初学者最好用比较齐全的代码生成工具,不然拼错一个代码会掉坑里半天爬不出来. 有的同学会说干么 ...

  9. gulp常用插件之rev-del使用

    更多gulp常用插件使用请访问:gulp常用插件汇总 rev-del这是一款从模块(如gulp-rev)生成的修订清单中删除旧的.未使用的指纹文件. 更多使用文档请点击访问rev-del工具官网. 安 ...

  10. PAT (Basic Level) Practice (中文)1082 射击比赛 (20 分)

    本题目给出的射击比赛的规则非常简单,谁打的弹洞距离靶心最近,谁就是冠军:谁差得最远,谁就是菜鸟.本题给出一系列弹洞的平面坐标(x,y),请你编写程序找出冠军和菜鸟.我们假设靶心在原点(0,0). 输入 ...