Currently, I have a ruby variable accessible by the view called @json (which contains information I need in JSON format)
However, I want to pass this into a script area such as
<script type="text/javascript" charset="utf-8">
//Want @json to be usable here
</script>
Is there any way to do this?
asked Dec 2, 2012 at 19:58
Jonathan
1,4695 gold badges13 silver badges22 bronze badges
3 Answers 3
Assuming the script tag you mentioned is in a html erb view you can just use this:
<script type="text/javascript" charset="utf-8">
var json = <%= @json || 'null' %>;
</script>
answered Dec 2, 2012 at 20:00
Trent Earl
3,6671 gold badge18 silver badges20 bronze badges
Sign up to request clarification or add additional context in comments.
Comments
Another way to do it is like this: var json = "#{ @json || 'null' }"
answered Jul 29, 2013 at 18:58
Christian
8491 gold badge8 silver badges23 bronze badges
Comments
Better wrap that in quotes:
<script type="text/javascript">
var json = "<%= @json %>";
</script>
answered Dec 4, 2012 at 16:48
Samo
8,24013 gold badges63 silver badges96 bronze badges
Comments
default