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 相关文章推荐
超越Jquery_01_isPlainObject分析与重构
Oct 20 Javascript
基于jQuery的仿flash的广告轮播代码
Nov 04 Javascript
js中浮点型运算BUG的解决方法说明
Jan 06 Javascript
使用javascript实现json数据以csv格式下载
Jan 09 Javascript
jQuery position() 函数详解以及jQuery中position函数的应用
Dec 14 Javascript
第九章之路径分页标签与徽章组件
Apr 25 Javascript
jQuery获取浏览器类型和版本号的方法
Jul 05 Javascript
jquery实现垂直和水平菜单导航栏
Aug 27 Javascript
JavaScript仿微博输入框效果(案例分析)
Dec 06 Javascript
尝试自己动手用react来写一个分页组件(小结)
Feb 09 Javascript
解决vue-cli单页面手机应用input点击手机端虚拟键盘弹出盖住input问题
Aug 25 Javascript
JS使用JSON.parse(),JSON.stringify()实现对对象的深拷贝功能分析
Mar 06 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购物车代码
2020/06/05 PHP
用js模拟JQuery的show与hide动画函数代码
2010/09/20 Javascript
ExtJs使用总结(非常详细)
2012/03/22 Javascript
Jquery 数组操作大全个人总结
2013/11/13 Javascript
Jquery日历插件制作简单日历
2015/10/28 Javascript
CSS3 3D 技术手把手教你玩转
2016/09/02 Javascript
JavaScript常用代码书写规范的超全面总结
2016/09/11 Javascript
JS函数节流和函数防抖问题分析
2017/12/18 Javascript
Nodejs下使用gm圆形裁剪并合成图片的示例
2018/02/22 NodeJs
详解vuex的简单使用
2018/03/12 Javascript
JS中this的指向以及call、apply的作用
2018/05/06 Javascript
d3.js实现自定义多y轴折线图的示例代码
2018/05/30 Javascript
vue+element-ui动态生成多级表头的方法
2018/08/28 Javascript
vue3.0 CLI - 2.6 - 组件的复用入门教程
2018/09/14 Javascript
Vue基础配置讲解
2019/11/29 Javascript
Python性能优化的20条建议
2014/10/25 Python
python制作爬虫并将抓取结果保存到excel中
2016/04/06 Python
Python使用Scrapy保存控制台信息到文本解析
2017/12/27 Python
使用Python实现将list中的每一项的首字母大写
2019/06/11 Python
在python image 中安装中文字体的实现方法
2019/08/22 Python
解决pyPdf和pyPdf2在合并pdf时出现异常的问题
2020/04/03 Python
手对手的教你用canvas画一个简单的海报的方法示例
2018/12/10 HTML / CSS
网络艺术零售业的先驱者:artrepublic
2017/09/26 全球购物
JD Sports瑞典:英国领先的运动时尚商店
2018/01/28 全球购物
简单介绍Object类的功能、常用方法
2013/10/02 面试题
审核会计岗位职责
2013/11/08 职场文书
党校学习思想汇报
2014/01/06 职场文书
学习十八大坚定理想信念心得体会
2014/03/11 职场文书
房产买卖委托公证书
2014/04/04 职场文书
三分钟演讲稿范文
2014/04/24 职场文书
工厂见习报告范文
2014/10/31 职场文书
天下第一关导游词
2015/02/06 职场文书
户外亲子活动总结
2015/05/08 职场文书
寻找最美乡村教师观后感
2015/06/18 职场文书
新生儿未入户证明
2015/06/23 职场文书
学生病假条范文
2015/08/17 职场文书