2012-01-02 7 views
0

Javaスクリプトの次の配列@namesにjson形式でアクセスしたいとします。 だから私のコントローラで、私はこのコードを持っている:レンダリングされたjsonオブジェクトをレンダリングする方法

def new 
    @release = Release.new 
    @names=User.select(:name).where("name LIKE 'sr%'") 
    respond_to do |format| 
     format.html # new.html.erb 
     format.xml { render :xml => @release } 
     format.json { render :json =>{ :data1 => @names} } 
    end 
    end 

私のビューファイルにDATA1にアクセスする方法と、JavaScript関数に値を渡す方法を教えてください。

ありがとう、 Ramya。

答えて

3

あなたはjQueryのを使用する場合は、あなたが行うことができます:

$.getJSON('users/new.json', function(data) { 
    console.log(data); //you'll find your json here 
}); 

あなたが実行します。

$(document).ready(function() { 
    $(function(){ 
    $.getJSON('releases/new.json', function(data1) { 
     alert("inside getJson"); alert(data1); console.log(data1); 
    }); 
}); 

しかし、あなたが行う必要があります。

$(document).ready(function() { 
    $.getJSON('releases/new.json', function(data1) { 
    alert("inside getJson"); alert(data1); console.log(data1); 
    }); 
}); 

または:

$(document).ready(function() { 
    $(function(){ 
    $.getJSON('releases/new.json', function(data1) { 
     alert("inside getJson"); alert(data1); console.log(data1); 
    }); 
    })(); 
}); 
+0

こんにちは、ありがとうございました。私はコードを内部に置いた。コントロールは "getJSON関数"には戻りません。$(document).ready(function(){ $(function(){ $ .getJSON( 'releases/new.json'、function(data1){ alert ( "getJson内"); 警告(DATA1); はconsole.log(DATA1); }); }); – ramya

+1

はちょうどこんにちは申し訳ありませんが、私はルビーのファイルにエラーが気づいたために逃した – apneadiving

+0

私の答えを編集した私は。エラーが発生しました:172.30.11.164のGET "/releases/releases/new.json"をMon Jan 02に開始17:08:13 +0530 2012 ActionController :: RoutingError( "/ releases/releases/new"と一致するルートはありません。 json "): ルートファイルに何を追加する必要がありますか – ramya

2

http://domain/releases/1の代わりにhttp://domain/releases/1.jsonと入力すると、データがjsonとして解析されます。

関連する問題