input标签

input文件及多文件标签:

<input type="file" value="选择文件"></input>
<input type="file" multiple="multiple" value="选择多个文件"></input>

FileReader 以及 FileReaderSync . readAsText(file, encoding?)函数

FileReader是异步的文件读取器, 可以指定文本编码读取文本.
FileReaderSync在WebWorker中可用, 这个类的readAsText接口是同步的.

With jQuery

function popFileSelector() {
    $(`<input type="file" value="选择文件"></input>`)
        .click()
        .on('change', event => {
            let file = event.target.files[0];
            let file_reader = new FileReader();
            file_reader.onload = () => {
                let fc = file_reader.result;
                console.log(fc); // 打印文件文本内容
            };
            file_reader.readAsText(file, 'UTF-8');
        });
}

原生 Without jQuery

function popFileSelector() {
    let input = document.createElement('input');
    input.value = '选择文件';
    input.type = 'file';
    input.onchange = event => {
        let file = event.target.files[0];
        let file_reader = new FileReader();
        file_reader.onload = () => {
            let fc = file_reader.result;
            console.log(fc); // 打印文件文本内容
        };
        file_reader.readAsText(file, 'UTF-8');
    };
    input.click();
}

原生 With Promise


function popFileSelector() {
    return new Promise((resolve, reject) => {
        let input = document.createElement('input');
        input.value = '选择文件';
        input.type = 'file';
        input.onchange = event => {
            let file = event.target.files[0];
            let file_reader = new FileReader();
            file_reader.onload = () => {
                let fc = file_reader.result;
                resolve(fc); // 返回文件文本内容到Promise
            };
            file_reader.readAsText(file, 'UTF-8');
        };
        input.click();
    });
}
posted @   develon  阅读(4717)  评论(1编辑  收藏  举报
编辑推荐:
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
阅读排行:
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· 【.NET】调用本地 Deepseek 模型
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)
点击右上角即可分享
微信分享提示