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 –