代码之家  ›  专栏  ›  技术社区  ›  stevec Zxeenu

form_for中的占位符是否用于选择字段?

  •  0
  • stevec Zxeenu  · 技术社区  · 4 年前

    这个 answers how do I use a default placeholder ... in a select_tag? 演示如何设置 违约 选择字段的值。

    例如: enter image description here

    enter image description here

    <%= f.select :country, countries, {include_blank: true, prompt: "United States"}, {required: true, class: "form-control"} %>
    

    这里的问题是,我只想要占位符的轮廓,而不是可能意外提交的实际值。

    如果我们与 placeholder a中的值 text_field ,差异更加明显。我们 看见 占位符:

    enter image description here

    但我们不能偶然 提交 占位符。

    我怎样才能得到类似的行为 .select 场?

    也就是说,所以 选择字段中有一些占位符,但不会意外提交?

    0 回复  |  直到 4 年前
        1
  •  2
  •   Andreas Gebhard    4 年前

    只需更改 布尔值 价值 include_blank: true 到所需的占位符 一串 :

    <%= f.select :country,
                 countries,
                 { include_blank: "- nothing selected -" },
                 { required: true, class: "form-control" } 
    %>
    

    这将创建一个没有值的预选选择选项,Rails控制器会将其解释为 nil .

        2
  •  1
  •   HJW    4 年前

    根据 https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select select 没有 placeholder 选项。如果您希望显示不应提交的预定义值,可以添加 disabled 选择此特定项目并将其与 selected .

    <%= f.select :country, [['USA', 1], ['Canada', 2]], { disabled: '1', selected: '1' } %>