html将文本数据转换为文件并上传

时间:2013-04-19 15:10:52

标签: javascript html html5

是否可以使用javascript从文本输入转换文本并将其作为文件上传到服务器?我需要添加文本编辑器等页面来打开文本文件,然后更改它并作为文件上传到服务器,但不作为post请求中的参数值。

那有可能吗? 感谢。

1 个答案:

答案 0 :(得分:1)

如果浏览器支持XMLHttpRequest 2(请参阅http://caniuse.com/xhr2),则可以选择。

HTML5 Rocks教程的Uploading a file or blob: xhr.send(Blob)部分(XMLHttpRequest2中的新技巧)有一些示例代码可以帮助您入门:

function upload(blobOrFile) {
  var xhr = new XMLHttpRequest();
  xhr.open('POST', '/server', true);
  xhr.onload = function(e) { ... };

  // Listen to the upload progress.
  var progressBar = document.querySelector('progress');
  xhr.upload.onprogress = function(e) {
    if (e.lengthComputable) {
      progressBar.value = (e.loaded / e.total) * 100;
      progressBar.textContent = progressBar.value; // Fallback for unsupported browsers.
    }
  };

  xhr.send(blobOrFile);
}

upload(new Blob(['hello world'], {type: 'text/plain'}));