本站首页    管理页面    写新日志    退出


«November 2025»
1
2345678
9101112131415
16171819202122
23242526272829
30


公告
 本博客在此声明所有文章均为转摘,只做资料收集使用。

我的分类(专题)

日志更新

最新评论

留言板

链接

Blog信息
blog名称:
日志总数:1304
评论数量:2242
留言数量:5
访问次数:7652884
建立时间:2006年5月29日




[Ruby on Rails]Codey Fauser 的 Rails RJS 模板教程
软件技术

lhwork 发表于 2007/2/8 10:46:38

RJS模板是个新形式模板,称为 JavascriptGenerator 模板且带有 .rjs 文件扩展名。 但这个新的模板类型用来做什么的呢?下面是 Rdoc 内的段描述: “不同于使用动作的结果来渲染的常规模板,这些模板生成如何修改一个现有被渲染页面的指令。这可让你轻易地修改声明 Ajax 应答页面内的多个元素。这些模板内的动作在 Ajax 后台被调用并对发出请求页面做出更新。” 先试试检查 rjs 模板的版本。你可以使用下面指令: rake update_javascripts 一个小例子: 首先创建要由 rjs 模板更新的视图: < h1 id='header'>RJS Template Test< /h1 >< ul id='list'> < li>Dog< /li> < li>Cat< /li> < li>Mouse< /li> < /ul> 确保你的布局包含了 javascript 库: 然后给你的控制器添加要由 link_to_remote 调用的动作: def add end 现在 Rails 查找一个扩展名为 .rjs 的模板,以及 .rhtml 和 .rxml ,所以要为你控制器创建了名为 add.rjs 的视图并添加下面代码: page.insert_html :bottom, 'list', content_tag("li", "Fox") page.visual_effect :highlight, 'list', :duration => 3 page.replace_html 'header', 'RJS Template Test Complete!' 如果你好奇 page 对象来自哪里,Rdoc 提供了解释: “Page 是对你的模板自动有效的一个 JavaScriptGenerator 实例,它被隐含地包装在 ActionView::Helpers::PrototypeHelper#update_page 块内。” 现在当你在浏览器内加载页面并单击 ‘Add a fox’ 链接时,Fox 将被添加到清单并被高亮度突出显示。Header 也将被更新。你也可以渲染局部模板: page.replace_html 'header', :partial => 'my_partial' 总结: 从这个例子中可以看出,新的 RJS 模板使用 AJAX ,可简单地更新多个页面元素。 http://quirks.exposured.com/ruby/codey-fausers-rails-rjs-template-tutorial/


阅读全文(4323) | 回复(0) | 编辑 | 精华
 



发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.063 second(s), page refreshed 144794904 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号