[size=large]
这里为你提供一种非传统的表单提交模式。严格来说这里你是不用提表单就可以达到保存编辑的目的的,这里也是 javascript 的优点。
首先还是创建一个数据库的迁移
db/migrate/001_create_books.rb:
class CreateBooks < ActiveRecord::Migration
def self.up
create_table :books do |t|
t.column :title, :string
end
Book.create :title => 'Perl Best Practices'
Book.create :title => 'Learning Python'
Book.create :title => 'Unix in a Nutshell'
end
def self.down
drop_table :books
end
end
下一步。script.aculo.us and Prototype 这个库包含到模版
app/views/layouts/books.rhtml:
<html>
<head>
<title>Books</title>
<%= javascript_include_tag :defaults %>
</head>
<body>
<%= yield %>
</body>
</html>
调用 Books控制器中的 in_place_edit_for方法,将对象和对象的属性作为符号来传递。 控制器还定义了index和show 方法。
app/controllers/books_controller.rb:
class BooksController < ApplicationController
in_place_edit_for :book, :title
def index
@books = Book.find :all, :order => 'title'
end
def show
@book = Book.find(params['id'])
end
end
默认的视图对 书本数组进行迭代。
app/views/books/index.rhtml:
<h1>Books - list</h1>
<ul>
<% for book in @books %>
<li><%= link_to book.title, :action => 'show', :id => book.id %></li>
<% end %>
</ul>
最后, 调用 show。rhtml试图的 in_place_editor_field 方法
app/views/books/show.rhtml:
<h1>Books - edit</h1>
<b>Title:</b>;
<%= in_place_editor_field :book, :title %>;
[/size]
分享到:
相关推荐
其中,"就地编辑"(In-Place Editing)是一种常见的交互设计模式,允许用户直接在网页上修改数据显示的内容,而无需跳转到新的页面或表单。当这种功能与PHP后端相结合时,可以创建出更加动态且用户友好的界面。本文...
英杰士创建就地可编辑字段并将数据异步 (ajax) 存储到后端。
1. 创建HierarchicalDataTemplate:定义数据项如何在TreeView中显示,包括编辑字段和其他交互元素。 2. 监听事件:如MouseLeftButtonDown或TextBox的GotFocus事件,以便在用户点击节点时启动编辑模式。 3. 更改节点...
流编辑器适配器:就地编辑文件 一个命令行工具,用于使用不知道如何自己做的流编辑器对文件进行就地流编辑。 $ inplace somefile sed -e 's/foo/bar/g' 这类似于 GNU 海绵 (1) 命令,其用法如下: $ sed -e 's/...
内容已就地编辑。 前端是angularJS,后端是sailsJS 目前有一堆依赖,一些样式,和两个重要的前端文档index.html:此文档在 github 中设置样式并具有三个“cms-container”,每个“cms-form”和“cms-display”以及...
通过使用jquery.textarea-exander.js依赖项,随着内容的增长,对textarea字段的支持会自动扩展 完全支持Firefox,Chrome,Safari和Internet Explorer 8+ 将所有Javascript文件缩小并压缩到2k以下。 例子 截屏 用法 ...
Dynaspan是一种用于Rails的AJAX工具,可以在不影响您的网站体验的情况下更新任何对象的一个字段。 用户将以普通文本的形式看到网页。 在放置Dynaspan字段的任何地方,人们都可以单击文本,然后转换为文本输入。 ...
"X-EditableRails" 是一个基于 Ruby on Rails 的插件,它允许你在页面上实现就地编辑(in-place editing)功能,即用户可以直接在页面上修改数据显示的数据,而无需跳转到单独的表单页面。这个插件是 "X-Editable" ...
在使用功能强大的就地编辑网格的编辑数据。 图像编辑器目前支持JPEG,PNG,BMP,GIF和ICO图像格式。 使用集成的十六进制编辑器可视化和修改BLOB字段。 其他特点 完整的Unicode支持。 支持附加的数据库。 ...
-可视SQL查询生成器 -轻松建立复杂的SQL查询。... -在使用功能强大的就地编辑网格的编辑数据。 -图像编辑器目前支持JPEG,PNG,BMP,GIF和ICO图像格式。 -使用集成的十六进制编辑器可视化和修改BLOB字段。
SQLite可视化管理工具,允许用户在 SQLite 服务器上执行创建...-在使用功能强大的就地编辑网格的编辑数据。 -图像编辑器目前支持JPEG,PNG,BMP,GIF和ICO图像格式。 -使用集成的十六进制编辑器可视化和修改BLOB字段。
在使用功能强大的就地编辑网格的编辑数据。 图像编辑器目前支持JPEG,PNG,BMP,GIF和ICO图像格式。 使用集成的十六进制编辑器可视化和修改BLOB字段。 Version 3.5 Improved license registration process. ...
DataGridView支持就地编辑,用户可以通过双击或按F2键在单元格内直接修改数据,除非字段被设置为只读。单击列标题可以按升序或降序进行自动排序,考虑到数据类型,区分大小写。 **选择与自动调整大小** 用户可以...
表示可以显示和编辑字段的单行或多行编辑控件 在数据集中或可以用作非数据感知的编辑控件。 TDBDateTimeEditEh组件 表示可以显示和编辑的单行日期或时间编辑控件 数据集中的日期时间字段,或可用作非数据感知的...
在众多的AngularJS插件中,“angular-xeditable”脱颖而出,它为前端项目提供了就地编辑(In-place editing)的功能,让网页上的数据显示和编辑变得更加灵活和便捷。 “angular-xeditable”是一个轻量级的AngularJS...
用户可以就地编辑单元格,但需要处理编辑事件,如`CellBeginEdit`和`CellEndEdit`,以实现数据验证和更新数据源。 8. **处理错误和验证输入** DataGridView提供错误模板,可以显示单元格级别的错误信息。通过实现...
而x-editable则是一个轻量级的插件,提供了在页面上对元素进行就地编辑的能力。 首先,要启用Bootstrap Table的单元格编辑功能,你需要在HTML文件中引入以下依赖库: 1. Bootstrap CSS和JavaScript库,用于基础的...
此外,控件支持Windows XP视觉样式,并提供默认的行为,如就地编辑、自动排序、多种选择模式和自动调整大小功能。 ### 美化`DataGridView` 默认样式可以进一步优化。例如,可以使用`AutoSizeColumnsMode`属性自动...
`bootstrap-editable.js` 是 Bootstrap 的一个插件,主要用于实现表格或其他元素的就地编辑(In-Place Editing)。这个插件允许用户直接在页面上修改数据显示的内容,而无需跳转到新的页面或弹出窗口。它提供了多种...
默认情况下将调用就地编辑器,从而使用户能够修改“主题”字段。 此代码拦截按键,并调用约会编辑表单而不是就地编辑器,从而允许用户编辑所有约会字段,而不是单独编辑约会的“主题”。 替换技术用于完成此任务。