Rails中的文本字段,其大小动态增加

时间:2011-05-05 10:44:27

标签: textbox textarea ruby-on-rails-2 ruby-1.8

我正在尝试在我的项目中实现类似于Facebook的群组功能。我正在使用Rails 2.0.2和Ruby 1.8.7来实现项目特定目的。我使用的是Ubuntu 10.04操作系统。

我想为讨论主题和相应的评论实现一个文本字段,其大小会随着文本大小的增加而动态增加。

在定义迁移时的Rails中,有一种方法可以为描述等属性设置一个巨大的文本区域,迁移t.text :description中的代码就像这样。

现在,在讨论主题和相应评论不是很大的大多数情况下,这看起来不太好。

考虑到这一点,是否还有其他方法,其中文本字段可以通过基于在运行时输入的文本的大小动态控制。如果是,请指导我如何进行相同的工作。

此外,我必须将其命名为什么类型的属性。

对此的任何意见/建议都非常感谢..

谢谢...... :)

1 个答案:

答案 0 :(得分:1)

好的,首先我应该指出迁移文件中的t.text不一定是您在视图中获得大文本区域的原因。 t.text只是通知rails生成器在给定的表中创建一个可以存储大文本数据的列。

但是如果你使用脚手架,生成的视图将使用f.text_area来渲染屏幕上的相应字段,这就是它看起来很大的原因。

现在,如果您希望保持文本区域较小并根据其内容增长,则需要使用JavaScript。我最喜欢的JavaScript库/ framrwork是jQuery,如果你熟悉jQuery,你可以使用像jQuery expanding text areademo)之类的jQuery插件来实现它。但是Rails 2默认使用Prototype / Scriptaculous,如果你想坚持使用它,那么你可以使用类似的Prototype插件,如this one,或者从头开始编写像this这样的东西。

相关问题