加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

给ajaxfileupload上传文件时增加一些参数

发布时间:2020-12-16 01:29:35 所属栏目:百科 来源:网络整理
导读:ajaxfileupload是一个jquery的文件上传插件,可以利用ajax无刷新上传文件到服务器。其实现原理为:利用js动态创建一个表单,并提交。但默认情况下,该插件只能上传一个文件,且不能携带其它参数。有时候,我想给在上传文件的同时,还带一个参数,用来表示将

ajaxfileupload是一个jquery的文件上传插件,可以利用ajax无刷新上传文件到服务器。其实现原理为:利用js动态创建一个表单,并提交。但默认情况下,该插件只能上传一个文件,且不能携带其它参数。有时候,我想给在上传文件的同时,还带一个参数,用来表示将文件上传到哪个目录下。下面的修改就可以实现这个功能。

1、调用插件的地方,加上参数

$.ajaxFileUpload({
	            url:"${ctx}/tmsReceiver/doUpload.do",// 用于文件上传的服务器端请求地址
	            secureuri:false,// 一般设置为false
	            fileElementId:"fileUpload",// 文件上传空间的id属性  <input type="file" id="file" name="file" />
	            dataType: "json",// 返回值类型 一般设置为json
	            params:{"side":side,"identityNum":$("#identityNum").val()},success: function(data){...

2、修改插件代码:
在ajaxfileupload.js中调用创建表单的函数处,增加一个参数:

var form = jQuery.createUploadForm(id,s.fileElementId,s.params);

3、修改createUploadForm函数:

createUploadForm: function(id,fileElementId,params)
 {
  //create form 
  var formId = 'jUploadForm' + id;
  var fileId = 'jUploadFile' + id;
  var form = jQuery('<form  action="" method="POST" name="' + formId + '" id="' + formId + '" enctype="multipart/form-data"></form>'); 
  var oldElement = jQuery('#' + fileElementId);
  var newElement = jQuery(oldElement).clone();


  jQuery(oldElement).attr('id',fileId);
  jQuery(oldElement).before(newElement);
  jQuery(oldElement).appendTo(form);
  for(var key in params){
	  var property = '<input type="text" name="'+key+'" value="'+params[key]+'">';
	  $(property).appendTo(form);  
 }...

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读