jQuery:加载txt文件并插入到div中

IT技术 javascript jquery ajax
2021-01-22 03:10:45

我想加载一个 *.txt 文件并将内容插入到 div 中。这是我的代码:

js:

$(document).ready(function() {
    $("#lesen").click(function() {
        $.ajax({
            url : "helloworld.txt",
            success : function (data) {
                $(".text").html(data);
            }
        });
    });
}); 

html:

<div class="button">
    <input type="button" id="lesen" value="Lesen!" />
</div>

<div class="text">
    Lorem Ipsum <br />
</div>

文本文件:

im done

如果我单击按钮 firebug 报告以下错误:

Syntax-Error
im done

我不知道该怎么办 :-(

6个回答

您需要添加一个数据类型 - http://api.jquery.com/jQuery.ajax/

$(document).ready(function() {
    $("#lesen").click(function() {
        $.ajax({
            url : "helloworld.txt",
            dataType: "text",
            success : function (data) {
                $(".text").html(data);
            }
        });
    });
}); 
我修复了它:-) 问题是我在没有 apache 的情况下在本地工作......完成了!
2021-03-17 03:10:45
@Khazl,确切的错误消息是什么。可以复制粘贴到这里吗?
2021-03-25 03:10:45
f(a=div.text, c="fxqueue", d=undefined, e=true) f(a=div.text, c="fxqueue", d=function()) f()jquery .... min.js (Zeile 16) f(a=[div.text], c=function(), d=undefined) f(a=function(), b=undefined) f(a="fx", c=function ()) f(a=3000, b="fx") success(data="im done") f(e=Object { url="helloworld.txt", isLocal=true, mehr...}, f= [“我完成了”,“成功”,对象 { readyState=4, responseXML=document, mehr...}]) g(a=200, c="success", l=Object { xml=document, text="我完成了"}, m="") g(a=readystatechange , e=undefined) 我完成了
2021-03-29 03:10:45

你可以使用 jQuery.load(): http://api.jquery.com/load/

像这样:

$(".text").load("helloworld.txt");

.load("file.txt")要容易得多。哪个有效,但即使进行测试,您也不会从本地驱动器获得结果,您需要一个实际的 http 服务器。看不见的错误就是XMLHttpRequest错误。

您可以使用 jQuery load方法获取内容并插入到元素中。

试试这个:

$(document).ready(function() {
        $("#lesen").click(function() {
                $(".text").load("helloworld.txt");
    }); 
}); 

您还可以添加回调以在加载过程完成后执行某些操作

例如:

$(document).ready(function() {
    $("#lesen").click(function() {
        $(".text").load("helloworld.txt", function(){
            alert("Done Loading");
        });
   }); 
}); 

尝试

$(".text").text(data);

或者将接收到的数据转换为字符串。