使用JS隐藏我的rails div

时间:2013-03-26 22:45:39

标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1 coffeescript

我的产品观点:

<a href="#" id="show_metrics">Show Metrics</a>
  <div id="metrics" class="hidden">
<%="Number of Primary Products: #{Product.total_product_size(rating_set).count}"%><br/>
<%="Number of Recommendations: #{Product.total_recommendation_size(rating_set).count}"%><br/>
<%="Percentage of Bad Recommendations: #{bad}/#{total} = #{number_to_percentage(percentage_bad, :precision => 2)}"%>
</div>

products.js.coffee:

$ ->
  $("a#show_metrics").click (event) ->
    event.preventDefault()
    $("div#metrics").toggle()

“显示指标”链接显示在我的视图中,但是单击链接时没有任何反应,但是当我查看我的页面源时,我将我的指标div视为隐藏值。单击“显示度量标准”链接时,我需要更改以显示度量信息。

生成的HTML:

<div id="metrics" class="hidden">
Number of Primary Products: 5
<br>
Number of Recommendations: 105
<br>
Percentage of Bad Recommendations: 0/0 = NaN%
</div>

生成JS:

(function() {
$(function() {
return $("a#show_metrics").click(function(event) {
event.preventDefault();
return $("div#metrics").show();
});
});
}).call(this); 

2 个答案:

答案 0 :(得分:0)

我认为你可以做到:

$("div#metrics").removeClass("hidden")

所以将它添加到您的代码中:

$ ->
  $("a#show_metrics").click (event) ->
    event.preventDefault()
    $("div#metrics").removeClass("hidden")

相反,如果你想隐藏它,你会这样做:

$("div#metrics").addClass("hidden")

答案 1 :(得分:0)

jQuery ->
  $("a#show_metrics").click (event) ->
    event.preventDefault()
    $("div#metrics").toggle()