js 數據導出為txt文件


  今天要做一個數據下載到本地保存為txt文件,一開始網上找了很多例子,大部分都是用的ActiveXObject對象,但是粘貼到本地測試就報錯,后來才發現這個只兼容IE。后來又搜索了半天才得到解決,現在我就把解決辦法給大家分享一下。

  首先HTML結構使用最簡單的結構:

       <textarea name="" id="text" cols="30" rows="10">這里輸入的數據將保存為txt中</textarea>

       <button id="save" type="button">保存</button>

  然后JS:  

       document.querySelector('#save').addEventListener('click', saveFile);

       function fakeClick(obj) { 
         var ev = document.createEvent("MouseEvents");
    ev.initMouseEvent("click", true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
    obj.dispatchEvent(ev);
  }

  function exportRaw(name, data) {
    var urlObject = window.URL || window.webkitURL || window;
    var export_blob = new Blob([data]);
    var save_link = document.createElementNS("http://www.w3.org/1999/xhtml", "a")
    save_link.href = urlObject.createObjectURL(export_blob);
    save_link.download = name;
    fakeClick(save_link);
  }

  function saveFile(){
    var inValue  = document.querySelector('#text').value;
    exportRaw('test.txt', inValue);
  }

 

  這樣就可以在點擊保存后將textarea中輸入的內容本地化為txt文件。

  2018-10-12 11:56  武漢。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM