在Javascript中从文本文件创建按钮

时间:2016-03-13 16:49:42

标签: html javassist

我正在尝试根据文本文件的内容创建按钮。我拼凑了我在网上找到的代码几乎得到了我想要的结果。我希望它自动加载预先指定的文件并在页面加载时创建按钮。目前它要求用户选择一个文件。我不想要那个,我希望它只是加载一个带有硬编码名称的文件并生成按钮。

我提前道歉,我没有JavaScript经验(请是异教徒)。



Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim tfield1 As New TemplateField()
    tfield1.HeaderText = "Assignment 2"
    GridView1.Columns.Add(tfield1)
End Sub

document.getElementById('file').onchange = function () {
    var file = this.files[0];
    var reader = new FileReader();
    
    reader.onload = function (progressEvent) {
        console.log(this.result);
        
        // Parse file by line
        var lines = this.result.split('\n');
        
        // Create buttons
        for (var line = 0; line < lines.length-1; line++) {
            var btn = document.createElement("BUTTON");
            var t = document.createTextNode(lines[line]);
            
            btn.appendChild(t);
            document.body.appendChild(btn);
        }
    };

    reader.readAsText(file);
};
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:1)

未经明确许可,不允许网页从用户的文件系统中读取本地文件。但是,他们可以从服务的服务器以及其他服务器中检索数据。

如果您只是编辑本地网页而不打算将其移至服务器,则您的计算机同时充当客户端和服务器。因此,您可以使用XMLHttpRequest代替<input type=file>来访问所需的文件。

如果您通过file:///加载页面,则需要将您的文件放在与网页相同的目录中或子目录中(否则同源政策会阻止你来自文件)。