<form enctype="multipart/form-data" method="post" action="http://A.com/upload.php">
<input type="file" name="file">
<input type="submit">
</form>
正常是这样的吧 , 然后会返回 http://A.com/upload.php , json 数据
怎么实现 在同一页面 ajax 上传呢 ?
可以配合jquery.form 来做 或者用这个https://github.com/blueimp/jQuery-File-Upload
原生js很简单,核心就是FromData对象,下面为实现代码。
function send(){
var xhr = new XMLHttpRequest(),
form = new FormData(),
metadata = document.getElementById('file').files[0];
form.append('file',metadata);
xhr.open("POST", "/test");
xhr.send(form);
}
jquery 上传文件的一些库
用动态插入iframe,参考http://www.ruanyifeng.com/blog/2012/08/file_upload.html