2013-03-22 65 views
0

我使用的是导轨形式帮手的下拉列表如下:Rails的形成帮手

<%= select_tag :analysis, options_for_select(%w[PENDING PASS FAIL], row3[7]), :disabled=> "true", 
:id => 'build_status#{index}', :style=> 'width:100px', :onchange => 'this.form.submit()'%> 

现在不是有

:disabled=> "true", 

我想用红宝石可变的,使得

$tmp = "disabled" 

并使用此变量禁用下拉列表。因为有时我想保持启用状态,有时会根据$ tmp变量的值禁用它。

我遇到了语法问题。任何人都可以测试一下,看看哪个语法可以正常工作?

回答

1

当使用:disabled选项时,您需要传递一个布尔值而不是字符串。鉴于任何字符串文字评估为true,disabled: "true"disabled: "false"都将禁用该标记。要不禁用该元素,您需要使用disabled: false(不是缺少引号)。也许这是你问题的根源?

要禁用基于另一个变量的元素,您可以将任何操作,将给你一个布尔值。例如,要仅在$tmp"disabled"时禁用菜单,则可以使用类似disabled: ($tmp == "disabled")之类的内容。