

jQueryで次のようなスクリプトを記述したところ、次のような結果になりました。

[code]

    //jQuery記述
    $(".Content").load("data/test.txt");
    
    $.get("data/test.txt",function (data, status){
        $(".Content").append(data);
    },"txt");
    
    $.ajax({
        url:"data/test.txt"
    })
    .then(
        function (data) {
            $(".Content").append(data);
        },
        function () {
            $(".Content").append("読込失敗");
        }
    );
    //txt内容(文字コードはUTF-8)
    読込成功
    //結果
    <div class="Content">読込成功読込失敗</div>
    
[/code]

上記の結果から、.loadによるデータの取得は成功しており、.ajaxと.getによるデータの取得は失敗しているものと思われます。  
私は.ajaxでデータを取得したいのですが、どのようにすればそれが可能でしょうか？

どうぞ、宜しくお願い致します。

3/26 10:24 追記  
FireFoxの開発者ツールでコンソールを確認してみたところ、下記のエラーが出ておりました。

[code]

    整形式になっていません。 test.txt:1:3
    整形式になっていません。 test.htm:1:3
    
[/code]

また、SabaMotto様のご指摘を受けて次のようにjQueryの記述を修正したところ、結果は下記のようになりました。

[code]

    //jQuery記述
    $(".Content").load("data/test.txt");
    
    $.get("data/test.txt",function (data, status){
        $(".Content").append(data);
    },"text");
    
    $.ajax({
        url:"data/test.txt",
        dataType:"text"
    })
    .then(
        function (data) {
            $(".Content").append(data);
        },
        function () {
            $(".Content").append("読込失敗");
        }
    );
    //結果
    <div class="Content">読込成功読込成功読込成功</div>
    
[/code]

上記の結果より、$.get及び$.ajaxによるデータの取得が成功したと思われるので、この質問は解決済みとさせて頂きます。


CC BY-SA 3.0
2017-03-26T06:13:43.013
33544
2017-06-24T01:20:31.290
2017-03-26T13:25:02.913
21197
21197
question
javascript jquery ajax
$.ajaxまたは$.getを用いてデータを取得する方法


コメントした第3引数で解決されたようなので、補足付きで回答しておきます。

`$.get` `$.post` `$.ajax`のdataTypeで指定できるものは次の6種類です。

  * "xml"
  * "html"
  * "script"
  * "json"
  * "jsonp"
  * "text"
  * デフォルト："xml", "html", "script", "json"から自動で判断される

今回のようにプレーンテキストを取得する場合は、自動で判別されないため明示的に"text"を指定しなければなりません。

参考 : <http://api.jquery.com/jquery.ajax/>


CC BY-SA 3.0
2017-03-26T17:34:56.270
33558
2017-03-26T17:34:56.270
19925
33544
answer