rails 3动态填充下拉列表

时间:2012-05-02 01:53:17

标签: ruby ruby-on-rails-3 model-view-controller ruby-on-rails-3.1

我在视图中有2个下拉列表。当视图加载了选项列表时,将自动填充第一个下拉列表。当一个项目被选中时,我想填充下拉列表#2。

最好的方法是什么?

1 个答案:

答案 0 :(得分:3)

有两种方法可以做到这一点。您可以执行AJAX调用(响应下拉列表#1中的值的选择)。这样做的缺点是它需要对服务器进行往返调用,然后用结果更新下拉列表#2的值。

另一种方法是在页面首次加载时为下拉列表#2预加载所有可能的值,并在值更改后立即使用JavaScript在浏览器中更改它(而不是一直调用到服务器获取值。)

无论哪种方式,您最有可能修改DOM,因此它将成为某种JavaScript解决方案。无论您选择AJAX,还是预先加载并立即更改它,都可能取决于它如何影响原始页面加载速度,您想要加载到客户端的数据量等等。如果下拉列表中的选项数量相对较少,可以选择#2 ,然后预加载可能是你最好的选择。