如何使用CoffeeScript制作动态表单?

时间:2016-07-26 16:01:07

标签: ruby-on-rails coffeescript

我一直在为我的工作开发一个rails应用程序,我想知道如何使用咖啡脚本来使我的表单动态。

以下是我的_form.html.erb示例:

  <tr>
     <td>
      <strong class="col-md-3">L'OCS est-il maintenu ?</strong>
      <div class="col-md-3">
        <%= f.check_box :maintenance, label: "", :class => 'towatch' %>
      </div>
      <strong class="col-md-2">TMA</strong>
      <div class="col-md-3">
        <%= f.collection_select(:tma_id, Entity.all.order(:name), :id, :name, prompt: 'Choisissez une TMA', :class => 'toset', hide_label: true) %>
      </div>
    </td>
  </tr>

如果选中了支票簿,我想只访问该集合。

这是我的咖啡脚本:

# Display if already checked
if $(".towatch:checked")
  $(".toset").toggle()

# Toggle on change
$(".towatch").change ->
  $(".toset").toggle()

这个咖啡脚本不起作用。有人可以解释我为什么,以及如何使它有效?

1 个答案:

答案 0 :(得分:0)

最后这很简单,一旦我得到toggle()不是很好用的函数,而是我修改css attribut如下:

##### Toggle TMA field if OCS is maintain ####
# Display if already checked
if $('.towatch').prop('checked') == false
  $('.toset').css('display','none')

# Toggle on change
  $('.towatch').change ->
    if $('.towatch').prop('checked')
      $(".toset").css('display','block')
    else
      $('.toset').css('display','none')