0

jsonオブジェクトを文字列形式に出力しようとしています。

(実際には、これらのデータ値を ruby​​ コードから取得しました var data = '<%=[@pro {|c| {x:c.x, y:c.y}}].to_json%>')

データ変数の印刷中に、&quot代わりに含まれる値を取得しました'

var data=[[{&quot;x&quot;:1,&quot;y&quot;:0}]]

形式で値を取得したいvar data="[[{ 'x': '1', 'y': '0' }]]";

次の形式で取得し&quot;たコードを使用して削除します。var dataset=JSON.parse(data.replace(/&quot;/g,'"'));

var データセット =[[{"x":1,"y":0}]]

のような値を出力したい[[{ 'x': '1', 'y': '0' }]].How it is possible.

4

2 に答える 2

0

2 つの変数のみを使用している場合は、次のように簡単に実行できます。

var data = [[{'x': '<%= @pro.x %>', 'y': '<%= @pro.y %>'}]];  

メソッドを使用する必要はありませんto_json

このコードが魅力のように機能するよりも多くの値を文字列化したい場合:

<% array = [[{'x' => 1, 'y' => 1}], [{'x' => 2, 'y' => 2}], [{'x' => 3, 'y' => 3}]] %>
<%= array.to_json %>

そして彼は次のように出力します:

[[{"x":1,"y":1}],[{"x":2,"y":2}],[{"x":3,"y":3}]]

コントローラーでリクエストによって json を送信する必要がある場合は、次を使用します。

def send_json_array
    array = [[{'x' => 1, 'y' => 1}], [{'x' => 2, 'y' => 2}], [{'x' => 3, 'y' => 3}]]
    response.headers['Content-type'] = "text/plain; charset=utf-8"
    render :text => array.to_json
end
于 2013-07-22T07:36:29.083 に答える
-3

JSON.stringify は、オブジェクトをその json 形式に変換します。

var dataset =[[{"x":1,"y":0}]]
var JsonData = JSON.stringify(dataset);
于 2013-03-28T06:11:11.863 に答える