发布文件是否需要<form>标记和按钮?

时间:2019-03-28 14:16:51

标签: javascript file post input file-upload

我的Web应用程序标题中有一个选项,可以选择<input type='file'/>来选择一个文件,我希望选择文件后立即开始将其上传到我的本地nodejs服务器。

我是否需要将其封装在带有POST属性的标签中,并通过按钮进行确认?和/或当选择文件而不使用按钮时,是否可以立即调用POST?

1 个答案:

答案 0 :(得分:1)

您为Pattern.compile榆树设置了一个onchange事件。

  

JavaScript

<input type="file" id="input">

存在选定文件的表单值并触发我们的let input = document.getElementById('input'); input.onchange = function(e) { if (file.files.length > 1) { // Upload } }; 事件之后。然后,我们使用Fetch帖子发布文件。

  

示例

onchange
const input = document.getElementById('input');

function upload(file) {
  fetch('http://', {
    method: 'POST',
    headers: {
      'Content-type': 'file-type'
    },
    body: file
  }).then(() => {

  }).catch((error) => {
    // Errors
    console.log('Log the error, since we are demoing');
  })
}

let chosen = () => {
    try {
       upload(input.files[0]);
    } catch(error) {

    }
}

input.addEventListener('change', chosen, false);