JavaScript异步拖拽上传文件

2018-07-20    来源:open-open

容器云强势上线!快速搭建集群,上万Linux镜像随意使用

upload.html   

<!DOCTYPE html>
<!--
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
-->
<html>
    <head>
        <title>TODO supply a title</title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <style>
            #box{
                width:150px;height: 150px;border: 1px solid red;
            }
        </style>
        <script type="text/javascript" src="XMLhttpReuest.js"></script>
        <script>
            window.onload = function () {
                var box = document.getElementById('box');
                box.ondragenter = function (e) {
                    e.preventDefault();
                }
                box.ondragover = function (e) {
                    e.preventDefault();
                }
                box.ondragleave = function (e) {
                    e.preventDefault();
                }
                box.ondrop = function (e) {
                    e.preventDefault();
                    var file = e.dataTransfer.files[0];
                    var formData = new FormData();
                    formData.append('aa', file);

                    var xml = ajaxFunction();
                    xml.open("post", './upload.php', true);
                    xml.send(formData);
                    xml.onreadystatechange = function () {
                        if (xml.readyState == 4 && xml.status == 200) {
                            var flag = xml.responseText;
                            console.log(flag);
                            if (flag == 1) {
//                               box.innerHTML="上传成功";
                                alert('上传成功');
                            }
                        }
                    }
                }


            }
        </script>
    </head>
    <body>
        <div id="box">
            请拖入上传的文件
        </div>
    </body>
</html>

upload.php         

<?php

header("Content-Type:text/html;charset=UTF-8");

if(is_uploaded_file($_FILES['aa']['tmp_name'])){
    move_uploaded_file($_FILES['aa']['tmp_name'], "./".iconv("UTF-8", "GBK", $_FILES['aa']['name']));
    echo '1';
}








XMLhttpReuest.js 

function ajaxFunction()
 {
 var xmlHttp;
 try
    {
   // Firefox, Opera 8.0+, Safari
    xmlHttp=new XMLHttpRequest();
    }
 catch (e)
    {
  // Internet Explorer
   try
      {
      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      }
   catch (e)
      {
      try
         {
         xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
         }
      catch (e)
         {
         alert("您的浏览器不支持AJAX!");
         return false;
         }
      }
    }
    return xmlHttp;
}

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:Android图片缓存工具类

下一篇: java使用正则提取字符串中的数字(例如提取短信中的验证码)