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

    文件异步上传实际是用form提交和iframe接收制造假异步效果

    步骤:

    触发提交按钮时,

    1.

    创建隐藏表单

    表单中植入上传的文件域

    为表单设置绝对定位到页面看不到的地方

    在文档中插入表单

    2.

    创建隐藏iframe

    为iframe设置绝对定位到页面看不到的地方

    在文档中插入iframe

    为表单设置action,method,target,enctype等属性

    3.

    表单提交

    再iframe加载完成后,回调操作函数,并延迟一会在DOM树种移除创建的表单和iframe。

    注意事项:

    1.创建表单后插入文件域的时候,如果讲选择文件后的input[type=file]克隆,把克隆体插入到表单,这个克隆的input[type=file]value会为空(在一些版本不一样的浏览器里),导致上传时不能获取到文件,所以要把也面上的input[type=file]直接插入到创建的表单中,再把克隆的文件域放到页面原先的位置,这样就不会出现兼容问题。

    2.创建的表单的enctype属性,IE678存在兼容问题,需要由encoding属性来代替

    3.调用iframe的内容

    IE:      document.getElementById(iframeId).contentDocument.document.body.innerHTML

    other: document.getElementById(iframeId).contentWindow.document.body.innerHTML

  • 相关阅读:
    Day5:面向对象的定义(下)
    SQL 查询中not in 与 not exists 的区别
    SQL 语句的执行顺序
    SQL server 连接 查询
    SQL server 约束
    静态类与非静态类,静态成员及使用方法
    HR面试总结
    值类型与引用类型精解
    面试技巧
    MVC与设计模式的关系及MVC的实现原理和设计原理
  • 原文地址:https://www.cnblogs.com/owys/p/3957377.html
Copyright © 2011-2022 走看看