Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/53.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
Javascript 启用默认禁用的字段_Javascript_Ruby On Rails - Fatal编程技术网

Javascript 启用默认禁用的字段

Javascript 启用默认禁用的字段,javascript,ruby-on-rails,Javascript,Ruby On Rails,我有以下代码,如果选择了“其他”,则显示并启用隐藏字段,否则该字段将从视图中隐藏并禁用 Type: <%= f.select(:origin_type, [['origin X', 'x'], ['Other', 'Other'], ['Origin Y', 'y'] ], {:prompt => "Please select"}, {:onchange => "if (

我有以下代码,如果选择了“其他”,则显示并启用隐藏字段,否则该字段将从视图中隐藏并禁用

Type: <%= f.select(:origin_type,
         [['origin X', 'x'],
          ['Other', 'Other'],
          ['Origin Y', 'y']
          ],
       {:prompt => "Please select"}, 
       {:onchange => "if (this.value == 'Other') 
        {document.getElementById('otherOrigin').style.display = 'block';
         document.getElementById('otherSpecies').disabled = false ;}
        else 
       {document.getElementById('otherSpecies').style.display = 'none';
        document.getElementById('otherSpecies').disabled = true ; }"
       }
       ) %>



<span id="otherOrigin"  style="display:none;"> If other, please state: <%= f.text_field :origin_type, :disabled=>true  %></span>
键入:“请选择”},
{:onchange=>“如果(this.value=='Other')
{document.getElementById('otherOrigin')。style.display='block';
document.getElementById('otherSpecies').disabled=false;}
其他的
{document.getElementById('otherSpecies')。style.display='none';
document.getElementById('otherSpecies')。disabled=true;}”
}
) %>
如果其他,请说明:真%>
默认情况下,文本_字段“otherOrigin”是隐藏和禁用的,但是如果选择了“Other”,我希望显示并启用它。 代码“
document.getElementById('otherSpecies').disabled=false;
”在选择other时似乎没有启用它


非常感谢您的任何建议。

以启用

您需要从输入中完全删除
disabled
属性

document.getElementById('otherSpecies').removeAttribute( "disabled" ) ;
禁用

要成为有效的XHTML,您需要设置
disabled=“disabled”


我认为您应该为select和text_字段指定id,以避免重复id。在您的情况下,select和text_字段将具有相同的id,js可能会出错

document.getElementById('otherSpecies').disabled = "disabled" ;