<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>测试文件上传</title> <script type="text/javascript" src="js/jquery.js"></script> <script type="text/javascript"> //③创建fileLoad方法用来上传文件 function fileLoad(ele){ //④创建一个formData对象 var formData = new FormData(); //⑤获取传入元素的val var name = $(ele).val(); //⑥获取files var files = $(ele)[0].files[0]; //⑦将name 和 files 添加到formData中,键值对形式 formData.append("file", files); formData.append("name", name); $.ajax({ url: "test.php", type: 'POST', data: formData, processData: false,// ⑧告诉jQuery不要去处理发送的数据 contentType: false, // ⑨告诉jQuery不要去设置Content-Type请求头 beforeSend: function () { //⑩发送之前的动作 alert("我还没开始发送呢"); }, success: function (responseStr) { //11成功后的动作 alert("成功啦"); } , error : function (responseStr) { //12出错后的动作 alert("出错啦"); } }); } $(function () { var $input = $("#upLoad"); // ①为input设定change事件 $input.change(function () { // ②如果value不为空,调用文件加载方法 if($(this).val() != ""){ fileLoad(this); } }) }) </script> </head> <body> <form action=""> <input type="file" id="upLoad"> </form> </body> </html>
如果本文对你有帮助,欢迎打赏本站