zoukankan      html  css  js  c++  java
  • 异步上传文件

     1 ; (function ($) {
     2         $.fn.UpLoadFileSSY = function (userOption) {
     3             var option = {
     4                 posturl: "",//上传路径
     5                 callblackfunction: function () { }//回调函数
     6             };
     7             var options = $.extend({}, option, userOption || {});
     8 
     9             var file = $(this);
    10             file.change(function () {
    11                 var iframe_form = "<iframe id='UpLoadFileSSYIframeForId' name='UpLoadFileSSYIframeForName' style='display:none;'></iframe><form id='UpLoadFileSSYFormForId' method='post' target='UpLoadFileSSYIframeForName' action='' enctype='multipart/form-data'></form>";
    12                 $(document.body).append(iframe_form);
    13 
    14                 var fileParent = file.parent();
    15 
    16                 var form = $("#UpLoadFileSSYFormForId");
    17                 var iframe = $("#UpLoadFileSSYIframeForId");
    18 
    19                 form.attr("action", options.posturl);
    20                 form.append(file);
    21                 form.submit();
    22 
    23                 iframe.load(function () {
    24                     file.appendTo(fileParent);
    25                     var result = iframe.contents().find('body').html().replace(/\<[^\>]*\>([^\<]*)\<[^\>]*\>/g, function ($0, $1) { return $1; });//todo  这里其实可以不用正则过滤的
    26                     options.callblackfunction.call(this, eval(result));
    27                     iframe.remove();
    28                     form.remove();
    29                 });
    30             });
    31         }
    32     })(jQuery);
  • 相关阅读:
    小端字节序与大端字节序
    V8引擎的垃圾回收策略
    TTL 和 DNS TTL 的区别
    详解 undefined 与 null 的区别
    Node.js 事件循环机制
    requestAnimationFrame 知多少?
    Web前端知识体系精简
    Vue.js 和 MVVM 小细节
    使用 Node.js 搭建 Web 服务器
    H5单页面手势滑屏切换原理
  • 原文地址:https://www.cnblogs.com/bbvi/p/4426189.html
Copyright © 2011-2022 走看看