html - 拖放文本文件

标签 html text drag-and-drop

我希望放置的文本文件按其内容或完整位置显示,以便我可以将该位置的内容加载到“drop_zone”。

这就是我目前所拥有的。我只能访问文件名:

<html>
<head>
  <title></title>
</head>
<body>
<textarea id="drop_zone">Drop files here</textarea>
<output id="list"></output>

<script>
  function handleFileSelect(evt) {
    evt.stopPropagation();
    evt.preventDefault();

    var files = evt.dataTransfer.files; // FileList object.
    document.getElementById('drop_zone').innerHTML = files[0].name;
  }

  function handleDragOver(evt) {
    evt.stopPropagation();
    evt.preventDefault();
    evt.dataTransfer.dropEffect = 'copy'; // Explicitly show this is a copy.
  }

  // Setup the dnd listeners.
  var dropZone = document.getElementById('drop_zone');
  dropZone.addEventListener('dragover', handleDragOver, false);
  dropZone.addEventListener('drop', handleFileSelect, false);
</script>
</body>
</html>

最佳答案

这是最终代码:

<html>
<head>
  <title></title>
</head>
<body>
<textarea id="drop_zone">Drop files here</textarea>
<script>
  function handleFileSelect(evt) {
    evt.stopPropagation();
    evt.preventDefault();

    var files = evt.dataTransfer.files; // FileList object.
    var reader = new FileReader();  
    reader.onload = function(event) {            
         document.getElementById('drop_zone').value = event.target.result;
    }        
    reader.readAsText(files[0],"UTF-8");
  }

  function handleDragOver(evt) {
    evt.stopPropagation();
    evt.preventDefault();
    evt.dataTransfer.dropEffect = 'copy'; // Explicitly show this is a copy.
  }

  // Setup the dnd listeners.
  var dropZone = document.getElementById('drop_zone');
  dropZone.addEventListener('dragover', handleDragOver, false);
  dropZone.addEventListener('drop', handleFileSelect, false);
</script>
</body>
</html>

关于html - 拖放文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12214057/

相关文章:

javascript - ReactJS 在多个列表之间拖放

HTML/CSS - 我怎样才能让我的表格列永远不会比我指定的宽度更宽

android - 如何在webview中搜索文本

c# - ItextSharp 在页面中心添加图像,并在其下方添加文本

python - 如何获取与某个单词相关的数字并打印该单词的次数?

Javascript : drag and drop image tag

javascript - 拖动期间触发 Mousemove (HTML5)

html - 在浏览器中测试媒体查询

javascript - 使用 href 自定义选项卡 View 的代码

html - Bootstrap : order elements with the 'navbar-right' class