根据用户输入显示div

时间:2014-08-22 17:12:59

标签: jquery css ruby-on-rails-4 coffeescript

我认为这对于一个比我更有经验的程序员来说很简单。在Rails中,使用coffescript,我想根据用户的选择显示其他内容。实际上,如果他们点击一个复选框,就会显示一个额外的字段供他们填写,否则它会保持隐藏状态。

现在页面呈现没有错误,但div最初没有被隐藏(我认为css会处理这个)并且单击复选框不会改变状态。

这是我的观点(_form.html.erb):

 <div id="po_state">
    <%= f.label :is_holiday %><br>
      <%= f.check_box :is_holiday %>
    <div id="addStuff">
          <div class="field">        
          <%= f.label :add_stuff %><br>
          <%= f.text_area :add_stuff %> </div>
    </div>
  </div>

这是我的css(holidays.css.scss):

#addStuff {
display: none;
}

这是我的coffeeScript(holidays.js.coffee):

showM = ->
  as.style.display = "block"
  return

m = document.getElementById("po_state")

as = document.getElementById("addStuff")

m.onclick = showM

以为我尝试用我的coffeeScript采用不同的方法。仍然没有快乐。

$("#po_state").change ->
  $("#addStuff").toggle @checked
  return

1 个答案:

答案 0 :(得分:0)

这很有用。我现在把它保存在jQuery中。 :

$(document).ready(function(){
    $("#po_state").click (function() {
  $("#addStuff").toggle( "bounce", 1000 );
    return false;
});
});