【发布时间】:2011-01-08 01:11:58
【问题描述】:
我在我的 Rails 项目中使用 Prototype 对表单进行就地编辑(通过 Ajax.InPlaceEditor)。但是,我不希望它立即回发并进行更新 - 表单本身非常复杂,用户可能会决定放弃他们的更改。只是现在他们不能,因为表单已经(对他们)无形地更新了数据库。
所以,我想做的是使用 Prototype InPlaceEditor 而不指定回发网址(或使其成为返回 true 的通用回发网址),然后作为该字段的“onLeaveEditMode”的一部分,让它更新隐藏具有新值的表单字段。
这样,当用户获得就地编辑器的精美外观,但仍可以按底部的“取消”并撤消所有更改时。
所以,我在一个小测试原型中开始了这项任务,它似乎有效——除了它意味着大量的 javascript 代码,并且在某种程度上,感觉就像在混蛋 InPlaceEditor 的目的。这必须是一个已解决的问题,但我的 google-fu 并没有像我想要的那样返回任何东西。
有点像这样(但显然不是网格表单),您可以在其中就地编辑字段,但必须按“保存”来提交更改: http://www.nitobi.com/products/grid/editors/
几个问题: 1) 是否有现有的 rails 插件或 Prototype 类可以为我执行此操作? 2) 如果不是,我的方法听起来合理吗?
谢谢!!
【问题讨论】:
标签: javascript ruby-on-rails partial-postback inplace-editing