先来一段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 中删得干干净净,再也找不出来。
分享到:
相关推荐
- **OReilly.RJS.Templates.for.Rails.Jun.2006.chm**:这可能是一个关于RJS模板的电子书,详细介绍了如何在Rails项目中使用和优化RJS模板,包括示例和最佳实践。 - **file_id.diz**:这通常是一个文件说明文件,...
rjs,全称Ruby JavaScript,是一种在Ruby on Rails框架中结合JavaScript的编程方式,主要用于创建动态和交互式的网页应用。它允许开发者使用Ruby语法来编写JavaScript代码,使得JavaScript的编写更加简洁、易读,...
标题中的“一些RJS资源和演示入门教程”指的是与Ruby ...通过研究这些文件,开发者可以学习到如何在Rails项目中使用RJS来增强用户体验,实现页面的动态更新,并理解RJS与AJAX、Rails框架的交互方式。
RJS全称是Ruby JavaScript,它是Rails中用于生成JavaScript代码的一种方式,主要用于在客户端执行一些动态操作,如更新页面部分,无需整个页面刷新。 在这个RJS Templates for Rails的电子书中,我们可以预期学习到...
这几天一直在学习使用RoR(Ruby on Rails),想建立一个功能全面一点的LBS(Location Based Service)网站。但是对于我这个RoR的初学者(仅有几天时间)来说,毕竟太复杂了。因此本文试图简化原来的设计思路,抛弃一切...
在随后的“Rails框架“部分中,作者深入介绍了Rails框架的各个组件。 除了上述两部分外,对Rails缺乏了解的读者应该首先阅读“起步”部分,通过一个最简单的应用示例感性了解这个时下热门的web框架。不熟悉Ruby的...
RJS(Remote JavaScript Template)是Ruby on Rails框架中的一个特殊组件,用于在服务器端生成JavaScript代码,并将其发送到客户端执行,从而实现动态更新页面的功能。这种方式可以有效减少页面刷新次数,提升用户...
在Ruby on Rails框架中,虽然RJS(Ruby JavaScript Server Pages)提供了对AJAX的支持,但处理JSON数据通常更为常见。Rails内置了JSON支持,但在某些情况下,可能需要使用额外的插件,如`json_pure`。安装`json_pure...
首先要纠正一个上篇博文《Rails中的Ajax初体验》中的一个错误:上篇博文中,我说“要在Rails中使用Ajax,局部模板是必须的”,经实践检验,是错误的,特此更正。实践是检验真理的唯一标准,此言不虚。经过项目中真正...
FirstOff,RJS ...................... 156 10.2 TestingJavaScriptfromRailswithJasmine..... 158 10.3 GettingStartedwithJasmine............. 158 10.4 RunningJasmineTests ................ 159 10.5 ...
Rails框架的流行部分归功于它对Ajax的友好支持,通过RJS模板简化了Ajax开发,以及对RESTful架构的深度集成。REST作为一种设计原则,确实成为了Web开发的趋势,但Java凭借其灵活性和不断进化的框架,如Spring Boot和...
在Java测试领域,RJS可能指的是“Rails.js”或“Refactored JavaScript”,但在这里,由于上下文未明确指出,我们暂且理解为一个用于测试的工具或框架。不过,根据提供的信息,我们主要关注的是如何通过实践来提高...