如何使Rails应用程序执行操作取决于是否选中了复选框? (ROR)

时间:2013-04-04 23:29:17

标签: ruby-on-rails ruby model-view-controller

我在一个名为post_form.html.erb的视图中有一个复选框,有人用它来发帖。以下是完整的代码:

<%= form_for @post, :html => {:multipart => true} do |f| %>
  <%= render 'shared/error_messages', object: @post %>
  <div class="field">
    <%= f.text_area :content, :cols => 5, :rows => 5 %>
  </div>
  <div class="ItemContainer">
    <div class="ItemInput">Add your photo:<br>
  <%= f.file_field :image %>
</div><div class="ItemCheckbox">
<label for="a">Run script?</label>
  <div class="ItemCheckboxAlign"><input type="checkbox" id="a"></div>
</div></div><br>
<%= f.submit "Post", class: "btn btn-large btn-primary" %>
<% end %>

以上用于发布,我使用show.html.erb作为视图。 正如您在上面的代码中看到的那样,在发布过程中有一个复选框。我想要它,如果选中该复选框,我的show.html.erb视图中会发生某些操作(在这种情况下运行脚本)。如果没有选中,那么我不想运行脚本。

是否存储布尔信息的最佳方法是否在数据库中选中了复选框?我的问题是,什么是使复选框与表值相关联的RoR代码?

2 个答案:

答案 0 :(得分:0)

你会想要使用jQuery:

$('#a').click(function() {
  $('#text').toggle();
});

答案 1 :(得分:0)

使用

$('#check_box_id').is(":checked") 

检查复选框是否已选中。