ajax如何实现无刷新上传文件功能

  介绍

这篇文章主要介绍了ajax如何实现无刷新上传文件功能,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获、下面让小编带着大家一起了解一下。

具体内容如下

& lt; ! DOCTYPE  HTML>   & lt; html>   & lt; head>   & lt; meta  http-equiv=癈ontent-Type",内容=皌ext/html;, charset=utf-8"比;   ajax & lt; title>无刷新上传文件& lt;/title>   & lt; script>   时间=window.onload 函数(){   var 才能;oBtn =, . getelementbyid (& # 39; btn # 39;);   var 才能;oMyFile =, . getelementbyid (& # 39; myfile # 39;);      oBtn.onclick 才能=,()函数,{   ,,,//警报(oMyFile.value);,//获取到的是文件控件值的值,这个内容是显示给你看的文字,不是我们选择的文件      ,,,//oMyFile.files 文件控件中选择的文件列表对象   ,,,//警报(oMyFile.files);      ,,,//我们是要通过ajax把oMyFile.files[0]数据发送给后端      ,,/*   ,,,for  (var  attr 拷贝oMyFile.files [0]), {   ,,,,,console.log (+, attr  & # 39;,:, & # 39;, +, oMyFile.files [0] [attr],);   ,,,}   ,,*/,,,//利用ajax发送必须要有一个ajax对象   ,,,var  xhr =, new  XMLHttpRequest ();      ,,,//监听上传事件   ,,,xhr.onload =,函数(){   ,,,,,//警报(1);   ,,,,,//警报(this.responseText);//后端返回的数据   ,,,,,var  d =, JSON.parse (this.responseText);      ,,,,,警报(时间+ d.msg  & # 39;,:, & # 39;, +, d.url);,//显示上传成功,并且显示文件路径   ,,,}      ,,,xhr.open(& # 39;文章# 39;& # 39;post_file.php& # 39;,真的),,//打开打开的方式不能使用,上传文件的地址,使用异步上传   ,,,//在使用帖子发送的时候必须要带一些请求头信息   ,,,xhr.setRequestHeader (& # 39; X-Request-With& # 39;,, & # 39; xmlhttprequest # 39;);   ,,,//发送要发送数据,   ,,,//将要上传的数据转换成二进制数据   ,,,//那么必须知道后端接收当前文件的名称是什么,然后后面带上当前文件的数据      ,,,var  oFormData =, new  FormData();,//通过FormData来构建提交数据   ,,,oFormData.append(& # 39;文件# 39;,oMyFile.files [0]);      ,,,xhr.send (oFormData);   ,,}   }   & lt;/script>   & lt;/head>   & lt; body>   & lt;才能input 类型=癴ile", id=癿yFile",/祝辞& lt; input 类型=癰utton", id=癰tn",价值=https://www.yisu.com/zixun/鄙洗?/>      

后端php代码post_file。php

& lt; php ?   头(& # 39;- type: text/html;, charset=皍tf-8" & # 39;);   时间=美元upload_dir  & # 39;上传/& # 39;;      如果函数($ _SERVER [& # 39; REQUEST_METHOD& # 39;]), !=, & # 39;文章# 39;){   exit_status才能(数组(& # 39;代码# 39;=祝辞1 & # 39;味精# 39;=祝辞& # 39;错误提交方式& # 39;));   }      如果(array_key_exists(& # 39;文件# 39;,带有_file美元),,,,带有_file美元[& # 39;文件# 39;][& # 39;错误# 39;],==,0,){      时间=美元才能pic 带有_file美元[& # 39;文件# 39;];      如果才能(函数(图片美元[& # 39;tmp_name& # 39;],, upload_dir。pic美元[& # 39;名字# 39;])){   ,,,exit_status(数组(& # 39;代码# 39;=祝辞0 & # 39;味精# 39;=祝辞& # 39;上传成功& # 39;,& # 39;url # 39;=祝辞upload_dir。pic美元[& # 39;名字# 39;]));   ,,}   }   echo 带有_file美元[& # 39;文件# 39;][& # 39;错误# 39;];   exit_status(数组(& # 39;代码# 39;=祝辞1 & # 39;味精# 39;=祝辞& # 39;出现了一些错误& # 39;));      美元function  exit_status (str) {   echo 才能json_encode (str);   退出才能;   }   ?在 什么是ajax

ajax是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术,可以通过在后台与服务器进行少量数据交换,使网页实现异步更新。

感谢你能够认真阅读完这篇文章,希望小编分享的“ajax如何实现无刷新上传文件功能”这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

ajax如何实现无刷新上传文件功能