zoukankan      html  css  js  c++  java
  • js上传

    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可以避免直接去读取浏览器的文件地址
  • 相关阅读:
    雪花算法解决的问题
    ServiceStack6000次限制破解
    电商 详情页面 nginx 配置 优先请求静态页,若没有请求动态页,同时生成静态页
    docker 使用汇总
    .net 5 新特性 -- EFCoreDBFirst 介绍 和 .NET5 AOP 5个Filter
    模板方法设计模式:定义抽象类-模板:定义业务流程,执行步骤--》各业务类继承抽象类,实现各自不同 具体的执行步骤
    通过代理模式(包一层),实现对业务增加功能如日志,异常处理,缓存结果,到达不破坏原有的业务代码,扩展了功能
    设计模式
    mongodb 基本操作(增删改查),事务,数据失效机制
    log4net.Config
  • 原文地址:https://www.cnblogs.com/sguozeng/p/9230468.html
Copyright © 2011-2022 走看看