我猜这是一个非常常见的程序,但是我无法查找解决方案,因为我不知道如何说出这个问题。基本上我需要为依赖于另一个输入选择的下拉列表添加验证检查,但后一个输入是另一种形式。因此,我想这意味着我需要对数据库进行验证。我正在试图找到一个很好的方法来做到这一点,并非常感谢建议。
为了给出更多的上下文,这两个输入相互依赖。第一个是空中处理程序类型列表。这是实际输入:
<div class="field heating_type">
<%= f.label :heating_air_handler_type_id, "Heating Type", :class => "required" %>
<%= collection_select(:air_handler, :heating_air_handler_type_id, AirHandlerType.where("for_heating = ?", true).order("sort_order"), :id, :display_name, {}) %>
</div>
另一个输入是工厂类型列表:
<div class="field plant_type">
<%= f.label :plant_type_id, "Plant Type", :class => "required" %>
<%= collection_select(:plant, :plant_type_id, PlantType.order("sort_order"), :id, :display_name, {}, { :class => "required" }) %>
</div>
基本上当用户选择空气处理器加热类型的“热泵”时,我必须确保工厂类型不是冷水机组。我还需要在相反的方向上工作,以便在用户选择与热泵选择不兼容的冷却器时向用户发出警告。
如果我没有提供足够的信息,请告诉我,我会填写更多详细信息。
答案 0 :(得分:0)
使用带有onchange事件的javascript / jquery绑定加热类型选择框。 在该函数内部,您可以更改其他列表中的值。添加或删除或仅隐藏或禁用。但是你想要规范第二个选择列表。