gpt4 book ai didi

ruby-on-rails - 禁用第一个 nil 选项 - rails

转载 作者:太空宇宙 更新时间:2023-11-03 16:43:27 26 4
gpt4 key购买 nike

想知道是否有办法只禁用选项列表中的第一个 nil 选项。有多个值为 nil 的选项。

例如,如果我们有

options_for_select(
[["first", nil],
["second", "second"],
["third", "third"],
["fourth", nil]])

产生

<option name="first" value>first</option>
<option name="second" value="second">Second</option>
<option name="third" value="third">Third</option>
<option name="fourth" value>Fourth</option>

并传入禁用值将禁用所有值为 nil 的值

options_for_select(
[["first", nil],
["second", "second"],
["third", "third"],
["fourth", nil]] , :disabled=>"")

<option name="first" value disabled>first</option>
<option name="second" value="second">Second</option>
<option name="third" value="third">Third</option>
<option name="fourth" value disabled>Fourth</option>

无论如何,我可以指定第一个要禁用的选项,而不管其值如何?最终目标是拥有

<option name="first" value disabled>first</option>
<option name="second" value="second">Second</option>
<option name="third" value="third">Third</option>
<option name="fourth" value>Fourth</option>

最佳答案

您可以更新您的值并传递给 option_for_select 助手。

arr = [["first", nil],["second", "second"],["third", "third"],["fourth", nil]]

val = arr.select{|v| v[1].nil?}
if val.any?
dis = val[0][0]
arr.push(:disable=>dis)
end

在上面的示例中,首先我从数组中选择所有 nil 值,然后我选择第一个 nil 值并将该值传递给 disable 变量。现在您可以将 arr 变量传递给助手

options_for_select(arr)

希望这对你有用。

关于ruby-on-rails - 禁用第一个 nil 选项 - rails,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39523483/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com