Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails :已禁用字段未在字段中工作\u_Ruby On Rails_Ruby On Rails 3_Form For_Fields For - Fatal编程技术网

Ruby on rails :已禁用字段未在字段中工作\u

Ruby on rails :已禁用字段未在字段中工作\u,ruby-on-rails,ruby-on-rails-3,form-for,fields-for,Ruby On Rails,Ruby On Rails 3,Form For,Fields For,我正在尝试将一个禁用的下拉框添加到我的表中,最终我将使其成为有条件的。 但是,在运行该行时,似乎没有将disabled添加到该行中 如果我检查页面中的元素,手动添加禁用的工作,但它不会在运行时添加 = f.fields_for(:targets, qualification.target_for(@grandfather.user)) do |builder| %tr %td = builder.select :completed, qualification.level

我正在尝试将一个禁用的下拉框添加到我的表中,最终我将使其成为有条件的。 但是,在运行该行时,似乎没有将disabled添加到该行中

如果我检查页面中的元素,手动添加禁用的工作,但它不会在运行时添加

= f.fields_for(:targets, qualification.target_for(@grandfather.user)) do |builder|
  %tr
    %td
      = builder.select :completed, qualification.level_options.map{|o| [o,o]}, :disabled => "disabled"
      = builder.hidden_field :qualification_id, :value => qualification.id
      = builder.hidden_field :id

查看Rails的API

它在选项中添加了
:disabled=>“disabled”
,而不是html\u选项。这是要使用的代码(请注意options参数的空哈希):


:disabled=>“disabled”
中,值
“disabled”
需要是select-i的
之一的值,即
资格。级别选项
应该有一个名为
disabled
的元素
:disabled
不是用来禁用整个HTML select元素,而是用来将
元素标记为disabled。Zabba,我没有完全理解你的意思。你能澄清一下吗:disabled=>“disabled”不是HTML5的一个特性吗?我想你指的是让“disabled”成为下拉框的一个选项。但是,我希望使用disabled:“disabled”功能禁用整个下拉框,这样您就无法从框中选择选项。级别选项已包含可供选择的选项最好使用
:readonly=>true
而不是
:disabled=>“disabled”
。作为带有
:disabled=>“disabled”
的字段,控制器的参数中不包括
select(object, method, choices, options = {}, html_options = {})
builder.select(:completed, qualification.level_options.map{|o| [o,o]}, {}, {:disabled => "disabled"})