JavaScript异步拖拽上传文件(未测试)
2016-07-22 10:21
363 查看
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异步执行的一些例子(未测试)
- js封装好的模仿qq消息弹窗代码(未测试)
- 设为首页代码和加入收藏JS代码(未测试)
- js获取屏幕大小 (未测试)
- JS实现无刷新倒计时(未测试)
- JS拖拽元素 兼容IE (未测试)
- JavaScript浮动广告窗口实例(未测试)
- 安装phantomjs,使用java代码进行截图
- JSP的内置对象
- Jackson 框架,轻易转换JSON
- js --- 闭包,垃圾回收机制
- javascript笔记——工作笔记
- jsp分页小结
- JSON的使用
- js实现继承的5种方式
- javaScript 迭代与循环
- Js 冒泡事件阻止
- JS处理时间
- JavaScript精通到深入
- .NET Core系列 : 2 、project.json 这葫芦里卖的什么药