Khazl
Khazl

Reputation: 582

jQuery: load txt file and insert into div

I want to load a *.txt file and insert the content into a div. Here my code:

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>

txt:

im done

If i click on the button firebug report following error:

Syntax-Error
im done

I don´t know what to do :-(

Upvotes: 48

Views: 180247

Answers (6)

Elon Gomes Vieira
Elon Gomes Vieira

Reputation: 447

 <script type="text/javascript">     
   $("#textFileID").html("Loading...").load("URL TEXT");
 </script>  

 <div id="textFileID"></div>

Upvotes: 0

andersna75
andersna75

Reputation: 51

The .load("file.txt") is much easier. Which works but even if testing, you won't get results from a localdrive, you'll need an actual http server. The invisible error is an XMLHttpRequest error.

Upvotes: 5

jncraton
jncraton

Reputation: 9132

You could use jQuery.load(): http://api.jquery.com/load/

Like this:

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

Upvotes: 37

Chandu
Chandu

Reputation: 82893

You can use jQuery load method to get the contents and insert into an element.

Try this:

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

You, can also add a call back to execute something once the load process is complete

e.g:

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

Upvotes: 2

Dogbert
Dogbert

Reputation: 222108

You need to add a dataType - http://api.jquery.com/jQuery.ajax/

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

Upvotes: 64

Jose Faeti
Jose Faeti

Reputation: 12302

Try

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

Or to convert the data received to a string.

Upvotes: 0

Related Questions