Js+php实现异步拖拽上传文件


Posted in Javascript onJune 23, 2015

异步拖拽上传文件--小实例

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;
}

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
一个很简单的办法实现TD的加亮效果.
Jun 29 Javascript
限制文本字节数js代码
Mar 06 Javascript
JS实现鼠标单击与双击事件共存
Mar 08 Javascript
采用自执行的匿名函数解决for循环使用闭包的问题
Sep 11 Javascript
浅析jquery unbind()方法移除元素绑定的事件
May 24 Javascript
JavaScript中ES6 Babel正确安装过程
Jul 18 Javascript
JavaScript实现图像模糊化的方法实例
Jan 15 Javascript
详解支持Angular 2的表格控件
Jan 19 Javascript
微信小程序实现topBar底部选择栏效果
Jul 20 Javascript
vue中使用codemirror的实例详解
Nov 01 Javascript
JavaScript中callee和caller的区别与用法实例分析
Jun 28 Javascript
浅析Vue 中的 render 函数
Feb 28 Javascript
javascript框架设计之类工厂
Jun 23 #Javascript
jQuery判断多个input file 都不能为空的例子
Jun 23 #Javascript
javascript框架设计之浏览器的嗅探和特征侦测
Jun 23 #Javascript
简述AngularJS相关的一些编程思想
Jun 23 #Javascript
javascript框架设计之种子模块
Jun 23 #Javascript
在JavaScript的AngularJS库中进行单元测试的方法
Jun 23 #Javascript
javascript框架设计之框架分类及主要功能
Jun 23 #Javascript
You might like
PHP+MYSQL会员系统的登陆即权限判断实现代码
2011/09/23 PHP
基于ubuntu下nginx+php+mysql安装配置的具体操作步骤
2013/04/28 PHP
PHP四舍五入精确小数位及取整
2014/01/14 PHP
PHP打开和关闭文件操作函数总结
2014/11/18 PHP
php检测图片主要颜色的方法
2015/07/01 PHP
ThinkPHP设置禁止百度等搜索引擎转码(简单实用)
2016/02/15 PHP
如何判断php mysqli扩展类是否开启
2016/12/24 PHP
php利用fsockopen GET/POST提交表单及上传文件
2017/05/22 PHP
学习jquery必备 api中英文对照的chm手册 下载
2007/05/03 Javascript
Javascript 中的 &amp;&amp; 和 || 使用小结
2010/04/25 Javascript
javascript天然的迭代器
2010/10/29 Javascript
AngularJS入门教程之路由机制ngRoute实例分析
2016/12/13 Javascript
如何学JavaScript?前辈的经验之谈
2016/12/28 Javascript
利用原生JS与jQuery实现数字线性变化的动画
2017/02/24 Javascript
Ionic学习日记实现验证码倒计时
2018/02/08 Javascript
11行JS代码制作二维码生成功能
2018/03/09 Javascript
了解JavaScript中let语句
2019/05/30 Javascript
Antd的Table组件嵌套Table以及选择框联动操作
2020/10/24 Javascript
使用Python的Twisted框架实现一个简单的服务器
2015/04/16 Python
Python使用reportlab将目录下所有的文本文件打印成pdf的方法
2015/05/20 Python
深入讲解Python函数中参数的使用及默认参数的陷阱
2016/03/13 Python
Python执行时间的计算方法小结
2017/03/17 Python
python SQLAlchemy 中的Engine详解
2019/07/04 Python
Django之PopUp的具体实现方法
2019/08/31 Python
基于python实现音乐播放器代码实例
2020/07/01 Python
AmazeUI 缩略图的实现示例
2020/08/18 HTML / CSS
欧洲顶级体育电子商务网站:SportsShoes.com
2018/03/27 全球购物
Clarks其乐鞋荷兰官网:Clarks荷兰
2019/07/05 全球购物
服装设计专业自荐书范文
2013/12/30 职场文书
校园活动策划书范文
2014/01/10 职场文书
网络优化专员求职信
2014/05/04 职场文书
司机岗位职责
2015/02/04 职场文书
2015年六一儿童节演讲稿
2015/03/19 职场文书
2015年少先队活动总结
2015/03/25 职场文书
2016年会领导致辞稿
2015/07/29 职场文书
Go语言中的UTF-8实现
2021/04/26 Golang