RubyonRails:如何将动态数据从服务器传输到javascript?
RoR具有渲染视图的控制器。有一天,我希望一个控制器不仅能呈现一个特定的视图,而且能在呈现后使用来自contoller(@product)的数据运行一些javascript代码RubyonRails:如何将动态数据从服务器传输到javascript?,javascript,ruby-on-rails,client-server,Javascript,Ruby On Rails,Client Server,RoR具有渲染视图的控制器。有一天,我希望一个控制器不仅能呈现一个特定的视图,而且能在呈现后使用来自contoller(@product)的数据运行一些javascript代码 1内联javascript 所以我去了我的产品/show.html.erb,写了如下内容: <%= javascript_tag "alert('#{@product.name} is just awesome!')" %> $(document).ready(function(){ $('*[dat
1内联javascript 所以我去了我的产品/show.html.erb,写了如下内容:
<%= javascript_tag "alert('#{@product.name} is just awesome!')" %>
$(document).ready(function(){
$('*[data-product-name]').each(
alert($(this).data('product-name') + ' is just awesome!');
);
});
4再向服务器发送一个请求 无论如何,如果您希望能够缓存视图文件和资产,似乎将数据传输到javascript的唯一方法是使用额外的Ajax请求。我想知道创建一个单独的操作将@product发送给客户是否是一个好的做法 有人会说,在呈现视图时,从服务器向javascript发送数据的最佳方式是什么?为什么
$(document).ready(function(){
alert('<%= @product.name%> is just awesome!');
});
<div class="product" data-product-name="<%= @product.name %>">
$(document).ready(function(){
$('*[data-product-name]').each(
alert($(this).data('product-name') + ' is just awesome!');
);
});