我的代码存在问题。从本质上讲,我有一个布尔值来确定客户端是否已经存在 - 如果用户说“是”'使用collection_select
显示以前的客户列表 - 如果用户说“不”'他们使用text_field
获取输入字段以创建新客户端。 JQuery相应地显示或隐藏正确的输入字段。
问题:提交此表单时,即使JQuery隐藏了与之无关的字段,该字段也会影响或阻止提交表单。
例如:如果用户说“是”'并选择现有客户并提交表单,我收到一条错误消息client_name
为空(因为表单提交空白text_field
而不是collection_select
中选择的用户)
我有什么想法可以解决这个问题?感谢任何帮助。
<p> Is this new collection for an existing client? </p>
<%= select_tag(:existing_client,options_for_select([['Yes', 1], ['No', 2]], 2), {id: "existing-client"}) %>
<%= f.collection_select :client_name, current_designer.client_folders, :client_name, :client_name, {prompt: true, selected: :id}, {id: "existing-list"} %>
<%= f.text_field :client_name, placeholder: "e.g. Sally Smith", id: "collect-input" %>