如何让ajaxfileupload.js支持IE9,IE10,并可以传递多个参数?

1、如何让ajaxfileupload.js支持IE9、IE10?

打开ajaxfileupload 文件,找到下面的代码

[javascript] view plain copy
  1. if(window.ActiveXObject){
  2. vario=document.createElement('<iframeid="'+frameId+'"name="'+frameId+'"/>');
  3. if(typeofuri=='boolean'){
  4. io.src='javascript:false';
  5. }
  6. elsetypeofuri=='string'){
  7. io.src=uri;
  8. }
  9. }
修改成如下:

copy
    if(jQuery.browser.version=="9.0"||jQuery.browser.version=="10.0"){
  1. vario=document.createElement('iframe');
  2. io.id=frameId;
  3. io.name=frameId;
  4. }if(jQuery.browser.version=="6.0"||jQuery.browser.version=="7.0"||jQuery.browser.version=="8.0"){
  5. vario=document.createElement('<iframeid="'+frameId+'"name="'+frameId+'"/>');
  6. typeofuri=='boolean'){
  7. io.src='javascript:false';
  8. typeofuri=='string'){
  9. io.src=uri;
  10. }

2、如何让ajaxfileupload.js可以在文件上传的同时传递多个台数。

找到以下代码

copy
  1. ajaxFileUpload:function(s){
  2. //TODOintroduceglobalsettings,allowingtheclienttomodifythemforallrequests,notonlytimeout
  3. s=jQuery.extend({},jQuery.ajaxSettings,s);
  4. varid=newDate().getTime()
  5. varform=jQuery.createUploadForm(id,s.fileElementId); //变化前
增加自己要传递的参数:

copy
  1. ajaxFileUpload: s=jQuery.extend({},108); list-style:decimal-leading-zero outside; line-height:17.27272605895996px; margin:0px!important; padding:0px 3px 0px 10px!important"> @H_502_301@varform=jQuery.createUploadForm(id,s.fileElementId,s.tag_name,s.tag_link,s.tag_sort,s.tag_status,s.tag_id);//变化后
这里我们增加了五个传递参数。s.tag_name,s.tag_id

接着找到:

copy
    createUploadForm:function(id,fileElementId,tag_name,tag_link,tag_sort,tag_status,tag_id)//增加tag_name,tag_id
  1. {
  2. //createform
  3. varformId='jUploadForm'+id;
  4. varfileId='jUploadFile'+id;
  5. //--增加以下内容
  6. vartagNameId='tag_name'+id;
  7. vartagLinkId='tag_link'+id;
  8. vartagSortId='tag_sort'+id;
  9. vartagStatusId='tag_status'+id;
  10. vartagIdId='tag_id'+id;
  11. //--end
  12. varform=$('<formaction=""method="POST"name="'+formId+'"id="'+formId+'"enctype="multipart/form-data"></form>');
  13. varoldElement=$('#'+fileElementId);
  14. varnewElement=$(oldElement).clone();
  15. vartagNameElement='<inputtype="text"name="tag_name"value="'+tag_name+'">';
  16. vartagLinkElement='<inputtype="text"name="tag_link"value="'+tag_link+'">';
  17. vartagSortElement='<inputtype="text"name="tag_sort"value="'+tag_sort+'">';
  18. vartagStatusElement='<inputtype="text"name="tag_status"value="'+tag_status+'">';
  19. vartagIdElement='<inputtype="text"name="tag_id"value="'+tag_id+'">';
  20. $(oldElement).attr('id',fileId);
  21. $(oldElement).before(newElement);
  22. $(oldElement).appendTo(form);
  23. //--增加以下的内容
  24. $(tagNameElement).appendTo(form);
  25. $(tagLinkElement).appendTo(form);
  26. $(tagSortElement).appendTo(form);
  27. $(tagStatusElement).appendTo(form);
  28. $(tagIdElement).appendTo(form);
  29. //setattributes
  30. $(form).css('position','absolute');
  31. $(form).css('top','-1200px');
  32. $(form).css('left','-1200px');
  33. $(form).appendTo('body');
  34. returnform;
  35. },
注意注释中的内容增加内容

修改完后,如何使用?

copy
    $.ajaxFileUpload({
  1. url:web_url,
  2. secureuri:false,
  3. //以下为增加的传递参数
  4. tag_name:tag_name,
  5. tag_link:tag_link,
  6. tag_sort:tag_sort,
  7. tag_status:tag_status,serif; line-height:17.265625px"> tag_id:tag_id,
  8. fileElementId:result[0],108); list-style:decimal-leading-zero outside; line-height:17.27272605895996px; margin:0px!important; padding:0px 3px 0px 10px!important"> dataType:'json',
  9. success:function(data,status){}
  10. //以下省略

OK,done.

相关文章

JS原生Ajax操作(XMLHttpRequest) GET请求 POST请求 兼容性问题 利用iframe模拟ajax 实现表单提交的返回...
AJAX 每日更新前端基础,如果觉得不错,点个star吧 &#128515; https://github.com/WindrunnerMax/E...
踩坑Axios提交form表单几种格式 前后端分离的开发前后端, 前端使用的vue,后端的安全模块使用的SpringSe...
很早就听闻ajax的名声,但是却一直不知道怎么用,今天自己捣鼓了一下,竟然会用了,哈哈哈哈。 为了防止...
需要在服务器上进行哈 jquery的ajax方法: // jquery请求 $.ajax({ url: &quot;./server/slider.js...
Ajax函数封装ajax.js // Get / Post // 参数 get post // 是否异步 // 如何处理响应数据 // URL // var...