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伸缩导航练习示例
Nov 13 Javascript
jquery表单验证框架提供的身份证验证方法(示例代码)
Dec 27 Javascript
使用JavaScript链式编程实现模拟Jquery函数
Dec 21 Javascript
jQuery常用数据处理方法小结
Feb 20 Javascript
JS实现控制表格行内容垂直对齐的方法
Mar 30 Javascript
JSON字符串转换JSONObject和JSONArray的方法
Jun 03 Javascript
JavaScript获取IP获取的是IPV6 如何校验
Jun 12 Javascript
JavaScript中浅讲ajax图文详解
Nov 11 Javascript
js自制图片放大镜功能
Jan 24 Javascript
JS基于onclick事件实现单个按钮的编辑与保存功能示例
Feb 13 Javascript
Vuejs在v-for中,利用index来对第一项添加class的方法
Mar 03 Javascript
解决vue单页面多个组件嵌套监听浏览器窗口变化问题
Jul 30 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
二次元帅气男生排行榜,只想悄悄收藏系列
2020/03/04 日漫
PHP Pear 安装及使用
2009/03/19 PHP
深入PHP操作MongoDB的技术总结
2013/06/02 PHP
php实现中文字符截取防乱码方法汇总
2015/04/29 PHP
PHP安装memcached扩展笔记
2015/05/28 PHP
php中smarty模板条件判断用法实例
2015/06/11 PHP
JQuery 动画卷页 返回顶部 动画特效(兼容Chrome)
2010/02/15 Javascript
基于JQuery的一句代码实现表格的简单筛选
2010/07/26 Javascript
javascript数组去掉重复
2011/05/12 Javascript
基于jquery的一个拖拽到指定区域内的效果
2011/09/21 Javascript
利用毫秒减值计算时长的js代码
2013/09/22 Javascript
Firefox下无法正常显示年份的解决方法
2014/09/04 Javascript
javascript实现详细时间提醒信息效果的方法
2015/03/11 Javascript
JavaScript实现判断图片是否加载完成的3种方法整理
2015/03/13 Javascript
JavaScript实现将数组中所有元素连接成一个字符串的方法
2015/04/06 Javascript
JS解析XML文件和XML字符串详解
2015/04/17 Javascript
在JS中操作时间之getUTCMilliseconds()方法的使用
2015/06/10 Javascript
JS+CSS实现鼠标滑过时动态翻滚的导航条效果
2015/09/24 Javascript
Vue实现动态创建和删除数据的方法
2018/03/17 Javascript
对vue v-if v-else-if v-else 的简单使用详解
2018/09/29 Javascript
vue-property-decorator用法详解
2019/12/12 Javascript
Vue.js暴露方法给WebView的使用操作
2020/09/07 Javascript
vue组件实现移动端九宫格转盘抽奖
2020/10/16 Javascript
比较详细Python正则表达式操作指南(re使用)
2008/09/06 Python
Python操作串口的方法
2015/06/17 Python
Python Socket传输文件示例
2017/01/16 Python
Python分支结构(switch)操作简介
2018/01/17 Python
tensorflow模型的save与restore,及checkpoint中读取变量方式
2020/05/26 Python
韩国11街:11STREET
2018/03/27 全球购物
电气个人求职信范文
2014/02/04 职场文书
秋季运动会广播稿(30篇)
2014/09/13 职场文书
债务纠纷起诉书
2015/05/20 职场文书
新兵入伍决心书
2015/09/22 职场文书
2016党员党课心得体会
2016/01/07 职场文书
七个非常实用的Python工具包总结
2021/06/15 Python
动画《朋友游戏》公开佐藤友生绘制的开播纪念绘
2022/04/06 日漫