0

$.getjquery /関数を使用してテキスト ファイルの内容を読み込もうとしていますが$.load、ルーティング ルールが原因でエラーが発生します。

私のコードは次のとおりです。

$.get(
    '/root/test.txt',
    function(data) {        
        $('#textfile').html("");
        lines = data.split("\n");
        for (i = 0; i < lines.length; i++) {    
            $('#textfile').append("<div class='row-fluid'>");   
            $('#textfile').append(lines[i]);
            $('#textfile').append("</div>");    
        }
    }
);

このエラーが発生しています:

2013-01-18 14:36:30 +0700 で 127.0.0.1 の GET "/root/test.txt" を開始し
ました TEXT パラメーターとして ErrorsController#routing によって処理
: {"a"=>"root/test"}
レンダリングされたパブリック/404.html.erb レイアウト内/レスポンシブ (0.6ms)

これを機能させるための提案はありますか?

4

2 に答える 2

0

このようなファイルをロードすることはできません.....これはgetメソッドを呼び出します。これはajax呼び出しになります...したがって、ルートディレクトリに配置されたテキストをロードする場合は、$。load()を使用してそのファイルをロード...!!

于 2013-01-18T09:59:53.213 に答える
0

Railsでは、すでにMVCアーキテクチャが進行していると思います。コントローラ(またはそのコントローラ内の関数)を作成し、そのコントローラにGET要求を送信して、テキストファイルの内容を返します。

だからあなたはしたいと思うでしょう

JqueryAJAXリクエスト

$.get("/readText", function(data){
    console.log(data);   //text file content
});

また、コントローラー(Rails)から、railsフレームワークが提供するIO APIを使用して、テキストファイルを読み取り、他のビューファイルで通常行うようにファイルの内容を印刷します。datajqueryajaxのパラメーターにはテキストファイルの内容が含まれます


または、次のようにテキストファイルの場所に直接マップできます。

$.get("resources/test.txt", function(data){
   console.log(data);
});

404エラーが発生しているとのことですが。これは、指定したURLパスに従ってテキストファイル(またはMVCアプリのコントローラー)を見つけることができなかったことを意味します。パブリックリソースにアクセスできるかどうかをすばやく効率的に調べる方法は、WebブラウザでURLを入力するだけです(例:localhost:8080 / yourapp / resources / test.txt)。ただし、サーバーからリソースを読み取ってから印刷する方が、一般公開でアクセスするよりも安全だと思います。

于 2013-01-18T10:00:19.523 に答える