`
zhong871004
  • 浏览: 62848 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

rails中使用rjs

阅读更多

先来一段rjs的说明:

它是一个文件,保存在app/views 目录下,扩展名为.rjs ,其中包含的命令可以生成JavaScript代码,并交给浏览器去执行。
模板本身的用法和.html.erb 模板一样:当action 收到请求时,如果请求来自于XHR ,它就会优先查
找.rjs 模板,对模板进行解析,生成JavaScript 并返回给浏览器,后者会最终执这些JavaScript 。
RJS 模板可以用于在多个页面之间提供交互性的行为,而且还能减少在页面上直接编写
JavaScript 的代码量。RJS 的一种主要用法就是:让页面上的一次操作引发多个客户端效果。

 

基本使用方法:

 

发送请求的view中的html代码
<div id="test">这个要被替换掉</div>

应答该请求的action
def test
    ...
    respond_to do |format|
        format.html
        format.js
    end 
end

test.rjs中的代码
page.replace_html("test","我是新替换的内容")
page.visual_effect :highlight,"test", :duration => 2
#高亮test标签
注:replace_html把渲染结果放入指定元素的innerHTML 属性;

 

其他修改html的方法
I、编辑数据
replace(id,options)
参数说明:元素的id和一组选项——就跟调用render 方法时传入的选项一样
功能:首先删除原来的元素,然后把新生成的元素插入到原来的位置上。
II、插入数据
insert_html(position, id, *options_for_render)
参数说明:插入的位置,目标元素的id ,以及渲染文本的选项。第一个参数可以是(:before 、:top 、:bottom和:after)。
  # Insert the rendered 'navigation' partial just before the DOM
  # element with ID 'content'.
  # Generates: Element.insert("content", { before: "-- Contents of 'navigation' partial --" });
  page.insert_html :before, 'content', :partial => 'navigation'

  # Add a list item to the bottom of the <ul> with ID 'list'.
  # Generates: Element.insert("list", { bottom: "<li>Last item</li>" });
  page.insert_html :bottom, 'list', '<li>Last item</li>'
功能:顾名思义,在页面上插入数据
III、显示和隐藏数据
:show 、hide 和toggle
都接受一个参数:元素id
还可以用remove 方法将一个元素彻底从页面上删掉——不是隐藏起来,而是将指定元素从DOM 中删得干干净净,再也找不出来。

分享到:
评论

相关推荐

    RJS Templates for Rails

    - **OReilly.RJS.Templates.for.Rails.Jun.2006.chm**:这可能是一个关于RJS模板的电子书,详细介绍了如何在Rails项目中使用和优化RJS模板,包括示例和最佳实践。 - **file_id.diz**:这通常是一个文件说明文件,...

    rjs 技术

    rjs,全称Ruby JavaScript,是一种在Ruby on Rails框架中结合JavaScript的编程方式,主要用于创建动态和交互式的网页应用。它允许开发者使用Ruby语法来编写JavaScript代码,使得JavaScript的编写更加简洁、易读,...

    一些RJS资源和演示入门教程

    标题中的“一些RJS资源和演示入门教程”指的是与Ruby ...通过研究这些文件,开发者可以学习到如何在Rails项目中使用RJS来增强用户体验,实现页面的动态更新,并理解RJS与AJAX、Rails框架的交互方式。

    Rails相关电子书汇总二

    RJS全称是Ruby JavaScript,它是Rails中用于生成JavaScript代码的一种方式,主要用于在客户端执行一些动态操作,如更新页面部分,无需整个页面刷新。 在这个RJS Templates for Rails的电子书中,我们可以预期学习到...

    使用Ruby on Rails开发LBS网站初探示例代码

    这几天一直在学习使用RoR(Ruby on Rails),想建立一个功能全面一点的LBS(Location Based Service)网站。但是对于我这个RoR的初学者(仅有几天时间)来说,毕竟太复杂了。因此本文试图简化原来的设计思路,抛弃一切...

    Web开发敏捷之道-应用Rails进行敏捷Web开发-第三版.rar

    在随后的“Rails框架“部分中,作者深入介绍了Rails框架的各个组件。 除了上述两部分外,对Rails缺乏了解的读者应该首先阅读“起步”部分,通过一个最简单的应用示例感性了解这个时下热门的web框架。不熟悉Ruby的...

    RJS Cheatsheet

    RJS(Remote JavaScript Template)是Ruby on Rails框架中的一个特殊组件,用于在服务器端生成JavaScript代码,并将其发送到客户端执行,从而实现动态更新页面的功能。这种方式可以有效减少页面刷新次数,提升用户...

    Ruby和Ruby on Rails中解析JSON格式数据的实例教程

    在Ruby on Rails框架中,虽然RJS(Ruby JavaScript Server Pages)提供了对AJAX的支持,但处理JSON数据通常更为常见。Rails内置了JSON支持,但在某些情况下,可能需要使用额外的插件,如`json_pure`。安装`json_pure...

    完成了AJAX树附原理分析

    首先要纠正一个上篇博文《Rails中的Ajax初体验》中的一个错误:上篇博文中,我说“要在Rails中使用Ajax,局部模板是必须的”,经实践检验,是错误的,特此更正。实践是检验真理的唯一标准,此言不虚。经过项目中真正...

    Rails Test Prescriptions.pdf

    FirstOff,RJS ...................... 156 10.2 TestingJavaScriptfromRailswithJasmine..... 158 10.3 GettingStartedwithJasmine............. 158 10.4 RunningJasmineTests ................ 159 10.5 ...

    Java在WEB开发领域的革新

    Rails框架的流行部分归功于它对Ajax的友好支持,通过RJS模板简化了Ajax开发,以及对RESTful架构的深度集成。REST作为一种设计原则,确实成为了Web开发的趋势,但Java凭借其灵活性和不断进化的框架,如Spring Boot和...

    practiceAppRJS:练习应用程序进行测试

    在Java测试领域,RJS可能指的是“Rails.js”或“Refactored JavaScript”,但在这里,由于上下文未明确指出,我们暂且理解为一个用于测试的工具或框架。不过,根据提供的信息,我们主要关注的是如何通过实践来提高...

Global site tag (gtag.js) - Google Analytics