js上传

摘要:
method=formDataUpload');&amp//启动临时上载}if(fileupload[i].name.indexOf(“.dwg”)>}}//上传到文件(fileupload[0].name);函数(ex){alert(ex);

js上传目前有很多的方法,有控件,有自定义的等等

下面为在项目中用到的一个自定义的上传,不依赖任何的控件

///上传触发事件
function StartLoadCAD() {
    var fileupload = document.getElementById('filePro').files;
    for (var i = 0; i < fileupload.length; i++) {
        var formdata = new FormData();
         formdata.append('files', fileupload[i]);   
        //formdata.append('files', fileupload);
        var xmlHttp = new XMLHttpRequest();
        xmlHttp.open("post", '../Myupload/upload.ashx?method=formDataUpload');
        xmlHttp.onreadystatechange = function () {
            if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
                //alert('上传成功');
                    //uploadToFile(fileupload[0].name);     //开始临时上传
            }
        }
        xmlHttp.send(formdata);
        if (fileupload[i].name.indexOf(".shp") >= 0&&fileupload[i].name.indexOf(".xml")==-1) {
            uploadToFile(fileupload[i].name);     //开始临时上传
        }
        if (fileupload[i].name.indexOf(".dwg") >= 0) {
            uploadToFile(fileupload[i].name);
        }
    }
 
    //uploadToFile(fileupload[0].name);     //开始临时上传
  
}


///临时上传            
function uploadToFile(filename) {
    $.ajax({
        type: "get",
        url: "Home.aspx",
        data: { "getCADpt": "getCADpt", "filename": filename },
        error: function (ex) {
            alert(ex);
        },
        success: function (data) {
            if (data == "-1") {
                alert("叠加文件格式不对");
                $("#fileurl").val("")
                return;
            }
            if (data == "0") {
                alert("选择文件为空");
                return;
            }
            //叠加
            $("#overCAD").fadeOut(500);
            AddCAD(data);       //获取CAD数据
 
        }
    });
}

其中,当执行到临时上传这里的时候,其实文件已经在上一步操作中把文件上传到了指定的位置
文件上传,一般浏览器都会对客户端的路径进行加密安全处理,所以采用fileupload可以避免直接去读取浏览器的文件地址

免责声明:文章转载自《js上传》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇装系统 ------ 使用微PE 做系统盘Jquery-获取勾选的checkbox的同级节点数量下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

JavaWeb项目架构之NFS文件服务器

NFS简介 NFS(Network File System)即网络文件系统。 主要功能:通过网络(局域网)让不同的主机系统之间可以共享文件或目录。 主要用途:NFS网络文件系统一般被用来存储共享视频,图片,附件等静态资源文件。 NFS存储服务 无NFS文件共享存储 当用户A通过互联网上传文件时,经过负载均衡,随机或者定向分配到某个节点。但是当用户B去下载...

HDFS只支持文件append操作, 而依赖HDFS的HBase如何完成数据的增删改查

转:http://www.th7.cn/db/nosql/201510/135382.shtml 1. HDFS的文件append功能 早期版本的HDFS不支持任何的文件更新操作,一旦一个文件创建、写完数据、并关闭之后,这个文件就再也不能被改变了。为什么这么设计?是为了与MapReduce完美配合,MapReduce的工作模式是接受一系列输入文件,经过ma...

deepin定制deepin-terminal

一. 背景介绍 本人以前在win10上经常使用xshell来登陆服务器。xshell提供了很丰富的功能和快捷键。个人比较喜欢的包括三个功能 终端透明 双击时根据分隔符选中文字 突出显示 但是自从使用deepin作为主力操作系统以后,固执地使用原创应用而非第三方应用的执念一直伴随着我。所以deepin-terminal成为我使用频率最高的应用。但是dee...

node系列:学会node调试

前言 该文章来自于chh大佬的投稿,为他打call 为何需要node调试? 熟练使用node调试能让你在日常开发中更快的定位问题所在的代码,提高开发效率 如何进行node调试? node调试方式多样,本篇只介绍笔者最熟悉的使用vscode的调试方式 使用vscode运行 vscode左侧共有五个按钮,第四个按钮即为"运行"按钮,假如你的根目录没有.vs...

如何在Ubuntu 20.04 Linux操作系统上安装Git

在继续下面的过程来安装Git之前,请确保您的操作系统是Ubuntu 20.04,并且您已经以具有sudo特权的用户身份登录。使用APT软件包管理器安装Git建议的,最简单的将Git安装到Ubuntu系统的方法是使用Ubuntu操作系统默认存储库中的本机软件包管理器(APT)。此过程将使用Ubuntu存储库中可用的版本安装Git,但如果要安装其他任何版本或最...

Java从CSV文件中读取数据和写入

package com.conn.csv; import java.io.BufferedReader; import java.io.FileReader; /** * @desc: 读取csv文件 * @author: tzconn@163.com * @time: 2018年3月22日16:22:41 */ public class Tes...