>[success] # 原生的ajax 上传图片 ~~~ 1.接收页面上的图片对象,要是用files 通过id获取document.getElementById('img').files[0] 2.传递的时候,由于图片是对象,所以这里不能使用一般的字典保存,要创建new FormData()对象,通过append方法来保存 ~~~ >[danger] ##### js 写法 ~~~ function Ajax2() { var img = document.getElementById('img').files[0] {#保存数据,可以保存对象#} var data = new FormData() {#添加数据#} data.append("kv","va") data.append("k1",img) //创建对象 var xhr = new XMLHttpRequest(); xhr.onreadystatechange = function () { if(xhr.readyState==4){ console.log(xhr.responseText); } } //获取数据 xhr.open('POST','/ajax/'); xhr.send(data); }; ~~~ >[danger] ##### Html ~~~ <input type="file" id="img"> <a href="#" onclick="Ajax2()">上传</a> ~~~