ruby-on-rails - Rails 3.1界面设计——级联下拉、表单输入

标签 ruby-on-rails ruby ruby-on-rails-3 user-interface user-input

对于我有如下模型的情况:

  • 国家
  • 城市
  • 意见

我想首先向用户展示国家/地区的下拉菜单。
选择国家/地区后,国家/地区下拉列表将显示在国家/地区下方。
选择一个州后,城市下拉列表将出现在州下方。
选择城市后,会出现一个文本框,用户可以写下他们对该城市的看法。
将文本放入文本框中后,将出现“提交”按钮。
一旦用户点击“提交”,我就会处理表单数据。

我想使用之前的选择来填充相应表格中的每个下拉列表,以限制下拉项目。
我也希望复选框具有相同的功能。

基本上,我希望能够定义级联表单输入方案。我看过一些关于该主题的信息,但没有任何内容可以针对 Rails 3 进行详细介绍。例如:
Rails 3.1 Dependent / Cascading Dropdowns
Rails 3.1 interdependent select dropdown lists

... 似乎只提供部分解决方案。我感觉我可能缺少一些基本的 Rails 概念,而且这个(看似常见的)任务应该更容易。我想简化用户输入体验。我的模型有很多很好的默认数据,我想在用户做出输入选择时向他们展示这些数据。我似乎无法将所有内容都放在一页上。

当我寻找“Rails 动态表单输入”时,我没有得到我正在寻找的搜索结果搜索“Rails Cascading 下拉列表”对一些人有所帮助。 “Rails 事件表单”让我了解了一段互联网历史。

有人能指路吗?

谢谢!


附录
这似乎暗示了我偶然发现的麻烦:http://guides.rubyonrails.org/form_helpers.html#building-complex-forms也许这就是我的答案?

最佳答案

我认为 JQuery 是实现这一目标的方式。现在我不是 JQuery 相关问题的专家,但我希望我至少可以为您指明正确的方向。要完成级联列表,您可以根据前一个输入的变化显示和隐藏选择的输入。从那里我会查看一个名为 jquery-chained 的 JQuery 库。该库将允许您在州中显示仅选择与所选国家/地区相关的州。我确实有几个链式库的工作示例,如果您愿意,我可以展示一个示例,而且我相信有很多在 JQuery 中隐藏和显示表单元素的示例。

关于ruby-on-rails - Rails 3.1界面设计——级联下拉、表单输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7786586/

相关文章:

ruby-on-rails - 编译错误,意外的 kENSURE,预计 Rails 3 项目中出现 $end 错误

ruby-on-rails - 如何通过仅针对一种情况禁用Ruby on Rails 缓存系统来检索数据库数据?

ruby - 用子进程杀死 ruby 中的 fork 进程

ruby-on-rails - 如何将 CSS 添加到 Ruby On Rails?

sql - 没有特定子记录的父记录的 Rails 范围

ruby - 解析大型 PDF 文件的方法

ruby-on-rails - 无法识别 rails 中 S3.yml 中的 ENV 变量

mysql - 需要在轨道上排列自己、 child 和 child 的 child

ruby-on-rails - 如何在 Rails 应用程序中使用 Bower 管理 Javascript 依赖项?

ruby-on-rails - 如何查询多态关系