使用javascript将文本字段保存到txt文件

时间:2015-01-04 15:01:23

标签: javascript

我在html文件中有一个表格,如下所示:

 <td>appKey</td>
                <td><input type="text" id="_appKey" size="40"></td>
            </tr>
            <tr>
                <td>bundleId</td>
                <td><input type="text" id="_bundleId" size="40"></td>
            </tr>
            <tr>
                <td>serverURL</td>
                <td><input type="text" id="_serverURL" size="40"></td>
            </tr>

我将用信息填写这些文本区域,我需要一个函数,允许我将输入的信息保存到字段中,保存到计算机上的txt文件中(使用javascript)。可以使用key =值形成(键是id给出了字段,值是我输入字段的信息)

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

您可以使用blob并下载文本文件通常,而不会显示任何提示信息。

看看小提琴:http://jsfiddle.net/xhbhqusz/12/

Javascript不适用于此类内容,但现代浏览器提供Blob类,可以通过单击锚标记创建文本文件供您下载。

            <tr> <td>appKey</td>
                <td><input type="text" id="_appKey" size="40"></td>
                    <a download="info.txt" class="downloadlink" >Download</a> </p>

            </tr>
            <tr>
                <td>bundleId</td>
                <td><input type="text" id="_bundleId" size="40"></td>
                     <a download="info.txt" class="downloadlink" >Download</a> </p>
            </tr>
            <tr>
                <td>serverURL</td>
                <td><input type="text" id="_serverURL" size="40"></td>
                     <a download="info.txt" class="downloadlink" >Download</a> </p>
            </tr>

javascript,具有此stackoverflow answer

的逻辑
(function () {
var textFile = null,
  makeTextFile = function (text) {
    var data = new Blob([text], {type: 'text/plain'});

    // If we are replacing a previously generated file we need to
    // manually revoke the object URL to avoid memory leaks.
    if (textFile !== null) {
      window.URL.revokeObjectURL(textFile);
    }

    textFile = window.URL.createObjectURL(data);

    return textFile;
  };


  var inputFields = document.getElementsByTagName('input');

      for(var i = 0; i < inputFields.length; i++) {
          (function(i){
            inputFields[i].addEventListener('keyup', function () {
                var link = document.getElementsByClassName('downloadlink')[i];
                link.href = makeTextFile(inputFields[i].value);
            });
          })(i);
      }
})();