0

我在视图中有2个下拉列表。当视图获取选项列表时,首先下拉菜单会自动填充。当选择一个项目,我想填充下拉#2。rails 3动态填充下拉列表

这样做的最佳方式是什么?

回答

3

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

另一种方式是在页面第一次加载时为页面下拉#2预加载所有可能的值,并且只要值改变就用JavaScript修改浏览器中的值(而不是一路打电话回到服务器获取值)。

无论采用哪种方式,您都在修改DOM,很可能是因为它会是某种JavaScript解决方案。无论您选择AJAX,还是预加载并立即更改,都可能取决于它对原始页面加载速度的影响,您要加载到客户端的数据量等。如果在下拉#2中可能的选项数量相对较少,那么预加载可能是你最好的选择。

+0

用3个下拉菜单做这件事的好方法是什么?问题在这里:http://stackoverflow.com/questions/30443561/how-to-link-3-dynamic-dropdowns-select-elements-in-rails-4 –