Rails / Javascript:如何将rails变量注入(非常)简单的javascript中
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Rails / Javascript:如何将rails变量注入(非常)简单的javascript中,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1008字,纯文字阅读大概需要2分钟。
内容图文
![Rails / Javascript:如何将rails变量注入(非常)简单的javascript中](/upload/InfoBanner/zyjiaocheng/808/ff9683a9146e42328eb250b5310e717b.jpg)
我想在rails中编写一个非常简单的javascript计算器,它将输入字段的数量乘以存储在rails变量中的数字(@ item.base_price)
所以,在javascript / coffeescript方面,它粗略地说:
# app/assets/javascript/items.js.coffee
$->
$('#item_quantity').change ->
quantity_val = $(this).val()
$('#total_amount').html(quantity_val * <%= I_WANT_@ITEM.BASE_PRICE_HERE %>)
我知道如何通过每次change()调用的ajax调用来实现这一点,但我认为必须有一个优雅的,希望不显眼的rails方式,每次都不会命中服务器.
任何建议非常感谢
解决方法:
如果您使用的是rails 3.1,则可以利用资产管道对javascript文件进行一些预处理,然后再进行提供.要执行此操作,只需更改文件扩展名:
items.js.coffee
至
items.js.coffee.erb
然后你就可以在你的javascript中添加ruby,就像你在视图中使用<%=%>一样标签.您可能遇到的唯一问题是,您的items.js文件将被提供给您的任何应用程序控制器方法的每个请求.因此,最好编写一个辅助方法,只有在初始化实例变量时才会返回值
例如,在items_helper.rb中
def item_price
if @item
@item.base_price
else
0
end
end
编辑:更多关于资产管道:
http://guides.rubyonrails.org/asset_pipeline.html
内容总结
以上是互联网集市为您收集整理的Rails / Javascript:如何将rails变量注入(非常)简单的javascript中全部内容,希望文章能够帮你解决Rails / Javascript:如何将rails变量注入(非常)简单的javascript中所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。