AJax技术

HTML5+Ajax上传文件

字号+ 作者:H5之家 来源:H5之家 2016-03-15 10:19 我要评论( )

HTML input 类型设为 file : label for = img_input / label input id= img_input type = file / 如果想上传多文件,可添加 multiple input type= file name= i

 

 

 

 
  HTML5 中已经可以用 Ajax 上传文件了,而且代码非常简单,借助 FormData 类即可发送文件数据。


		

<?php if (isset($_POST['upload'])) { var_dump($_FILES); move_uploaded_file($_FILES['upfile']['tmp_name'], 'up_tmp/'.time().'.dat'); //header('location: test.php'); exit; } ?> <!doctype html> <html lang="zh"> <head> <meta charset="utf-8"> <title>HTML5 Ajax Uploader</title> <script src="jquery-2.1.1.min.js"></script> </head> <body> <p><input type="file" id="upfile"></p> <p><input type="button" id="upJS" value="用原生JS上传"></p> <p><input type="button" id="upJQuery" value="用jQuery上传"></p> <script>

/*原生JS版*/ document.getElementById("upJS").onclick = function() {

/* FormData 是表单数据类 */ var fd = new FormData(); var ajax = new XMLHttpRequest(); fd.append("upload", 1);

/* 把文件添加到表单里 */ fd.append("upfile", document.getElementById("upfile").files[0]); ajax.open("post", "test.php", true); ajax.onload = function () { console.log(ajax.responseText); }; ajax.send(fd); } /* jQuery 版 */ $('#upJQuery').on('click', function() { var fd = new FormData(); fd.append("upload", 1); fd.append("upfile", $("#upfile").get(0).files[0]); $.ajax({ url: "test.php", type: "POST", processData: false, contentType: false, data: fd, success: function(d) { console.log(d); } }); }); </script> </body> </html>

 

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 【Ajax技术】Ajax技术概述

    【Ajax技术】Ajax技术概述

    2016-03-15 14:00

  • ajax初步学习

    ajax初步学习

    2016-02-28 11:01

  • JQuery实现Ajax加载图片的方法

    JQuery实现Ajax加载图片的方法

    2016-02-24 17:01

  • 判断用户是不是为ajax请求

    判断用户是不是为ajax请求

    2016-02-24 17:00

网友点评