【发布时间】:2017-04-02 04:24:07
【问题描述】:
我想使用纯 javascript 上传图像和其他输入数据。我已经搜索了很多东西,但它与我想要的不同。所以我决定把它贴在这里。我想要的是与其他输入数据一起上传图像。
<form enctype="multipart/form-data" id="form">
<input type="text" placeholder="Description" name="desc">
<input type="file" name="file" id="image">
<input type="submit" class="btn btn-primary">
</form>
JS
var myform = document.getElementById('form');
myform.addEventListener('submit', function(e){
e.preventDefault();
var fileInput = document.getElementById('image');
var file = fileInput.files[0];
var datas = new FormData(myform);
var xhr = new XMLHttpRequest();
var url = "sample.php";
xhr.open('POST', url, true);
xhr.setRequestHeader('Content-type', 'multipart/form-data');
xhr.onreadystatechange = function(){
if(xhr.readyState == 4 && xhr.status == 200){
var response = xhr.responseText;
console.log(response);
}
};
xhr.send(datas);
});
PHP
echo $_FILES['file']['name'];
输出
未定义的索引:文件
【问题讨论】:
标签: javascript php file file-upload