【问题标题】:How do I toggle the display of <div> in Rails 3?如何在 Rails 3 中切换 <div> 的显示?
【发布时间】:2011-07-22 09:28:04
【问题描述】:

我有一个包含表单其他字段的表单。我希望用户能够切换他们是否看到它。

我希望他们能够按下按钮/链接,使该 div 出现或消失。 理想情况下我可以有一些简单的 javascript 效果,例如滑入或淡入。

这是我的_form:

  1 <%= form_for @message do |f| %>
  2   <%= f.error_messages %>
  3   <p>
  4     <%= f.label :subject %><br />
  5     <%= f.text_field :subject %>
  6   </p>
  7   <p>
  8     <%= f.label :body %><br />
  9     <%= f.text_area :body %>
 10   </p>
 11   <p>
 12   <div id = "contact_form">
 13      <%= form_for @contact do |fc| %>
 14         <p>
 15           <%= fc.label :first_name %><br />
 16           <%= fc.text_field :first_name %>
 17         </p>
 18         <p>
 19           <%= fc.label :last_name %><br />
 20           <%= fc.text_field :last_name %>
 21         </p>
 22 
 23      <% end %>
 24   </div>
 25   </p>
 26   <p>

【问题讨论】:

    标签: javascript ruby-on-rails forms toggle


    【解决方案1】:

    完成此操作的最简单方法是在某处添加链接以调用脚本,如下所示:

    <script type="text/javascript">
    function show(id) {
      document.getElementById(id).style.visibility = 'visible';
    }
    </script>
    
    <a href="#" onclick="show('contact_form'); return false;">show sub-form</a>
    

    【讨论】:

    • ...当然,您也可以在onclick 属性中内联脚本部分。
    【解决方案2】:

    最简单的方法是使用 jQuery javascript 库的 .css 规则:

    http://api.jquery.com/css/ (见下四分之一的例子:在鼠标悬停事件时将任何段落的颜色更改为红色。

    所以使用这个你会在点击按钮/链接时使用这个javascript:

    $('div#contact_form').css('display', 'none');
    

    【讨论】:

    • 呵呵,两个“最简单的方法”答案
    • 点击链接本身时如何使用该javascript sn-p?这是为了点击实际的div吗?谢谢...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多