javascript - 自动加载文件,无需使用单击按钮

标签 javascript

我是 javascript 新手,想要加载文件而无需单击加载文件按钮

我正在使用以下脚本,我希望文本自动加载到文本框中。

<html>
    <body>
        <table>
            <tr>
                <td>Select a File to Load:</td>
                <td>
                    <input type="file" id="fileToLoad">
                </td>
                <td>
                    <button onclick="loadFileAsText()">Load File</button>
                <td>
            </tr>
            <tr>
                <td colspan="3">
                    <textarea id="inputTextToSave" style="width:512px;height:256px"></textarea>
                </td></tr>
            </tr>
        </table>
    </body>
</html>

<script type='text/javascript'>
function loadFileAsText()
{
    var fileToLoad = document.getElementById("fileToLoad").files[0];
    var fileReader = new FileReader();
    fileReader.onload = function(fileLoadedEvent) 
    {
        var textFromFileLoaded = fileLoadedEvent.target.result;
        document.getElementById("inputTextToSave").value = textFromFileLoaded;
    };
    fileReader.readAsText(fileToLoad, "UTF-8");
}
</script>

预先感谢您的帮助。

最佳答案

尝试添加 onchange 属性,这将在对该输入进行更改时调用函数。

<input type="file" id="fileToLoad" onchange="loadFileAsText()">

Demo

function loadFileAsText(){
var fileToLoad = document.getElementById("fileToLoad").files[0];
var fileReader = new FileReader();
    fileReader.onload = function(fileLoadedEvent){ 
        document.getElementById("inputTextToSave").value = fileLoadedEvent.target.result;
    };
fileReader.readAsText(fileToLoad, "UTF-8");
}
<table><tr>
<td>Select a File to Load:</td>
<td><input type="file" id="fileToLoad" onchange="loadFileAsText()"></td>
                                 <!-- ^^ onchange attribute added ^^ -->
</tr><tr>
<td colspan="2"><textarea id="inputTextToSave" style="width:512px;height:256px"></textarea></td>
</tr></table>

如果您对上述源码有任何疑问,请在下面留言,我会尽快回复您。

我希望这有帮助。快乐编码!

关于javascript - 自动加载文件,无需使用单击按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32701374/

相关文章:

javascript - Twitter Typeahead Bloodhound 远程 Spring MVC 字符解码失败

javascript - 如何将变量从 Javascript 输出到 html?

javascript - HTTPS 集群标记和自定义样式

javascript - JQuery - offset()/position() 的回调

javascript - 匹配至少一个大写字母和至少一个数字和任意数量的特殊字符的正则表达式

javascript - 如何将 sessionStorage 项值与嵌入式 javascript 文件中的后端参数进行比较?

javascript - 验证多个用 javascript 逗号分隔的电子邮件

javascript - 如何删除特定按钮?

javascript - 哪个是一个接一个地调用两个点击事件的正确方法?

javascript - Google Maps API - 兴趣点