在javascript中的show()hide()中遇到问题

时间:2011-05-31 00:39:21

标签: javascript ruby-on-rails

<script type="text/javascript">
  function serviceChange(list) {
    if (value == "OTHER")
    {
      document.getElementById('others').style.display="inline";
    }
    else
    {
      document.getElementById('others').style.display="none";
    }
  }
</script>

<%= select_tag "options", options_for_select(MyModel::ALL_TYPES), :onchange => "serviceChange(this.options[this.selectedIndex].value);" %>
</p>
<p id="others">
    <%= f.label :profile_url %><br />
    <%= f.text_field :profile_url %>
</p>

我在表演和隐藏方面遇到了麻烦。任何人都可以帮助我并解释它为什么不起作用吗?

当我使用函数onchange这样的函数时,它也不起作用:

<%= f.select :xyz_type, MyModel::ALL_TYPES, :include_blank => true, :onchange => "checkType(this);" %>

1 个答案:

答案 0 :(得分:2)

在你的第一个代码块中

if (value == "OTHER")

但你永远不会传递任何被调用的值或定义什么值。这可能会导致您的问题。尝试将其更改为列出,如果这是您传入的内容并尝试检查。

关于onchange无效的第二个问题,checkType定义在哪里?发布该功能,以便有更多信息可供使用。