JSONの扱いメモ
#下記、必要に応じてエスケープ要。
Rails => JavaScript
respond_to do |format| format.html { render :text => res.to_json }
でJSON化しておいて(render :json => resでも良い?)、
<script type="text/javascript"> $(function() { var qs = eval("<%= @questions.to_json.gsub(/\"/, '\\"') %>");
で展開。
JavaScript => Rails
$.ajax({ type: "POST", url: "<%= url_for(:action => :reflect_result) %>", data: { 'questions_list': qs.toSource(), 'authenticity_token': <%= form_authenticity_token.to_json %> }, success: function() { location.href = "<%= url_for(:action => :play) %>"; } });
とtoSource()でString化しておいて、
ActiveSupport::JSON.decode(params[:questions_list])
でJSON文字列をデコード。