轨道上的jquery / ruby​​ - 动态更改div的高度

时间:2013-07-31 15:20:12

标签: jquery ruby-on-rails

在我的应用中,我有一个页面,用户可以看到所有评论都列在另一个下面。每个评论都有一个“编辑”链接:

<div id ="edit_link">
    <%= link_to I18n.t('user.review.edit.edit'), edit_review_path(review), :remote => true, :class => "edit_review_link" %>
    </div>

它在与其他评论相同的页面上加载可编辑评论,用户可以更改它。

它在edit.js.erb文件中加载此代码:

$('#review_<%=@review.id%>').html("<%= escape_javascript(render 'edit') %>")

现在我正在尝试更改此评论的高度,以便在加载时进行编辑。我有什么想法可以做到这一点吗?

我确实尝试过我的edit.js.erb文件:

$('#review_<%=@review.id%>').html("<%= escape_javascript(render 'edit') %>")

$('#review_<%= review.id %>').animate({height:'250px'}, 350);
//this method increases the height to 250px, at .35 seconds

但我收到500 (Internal Server Error)错误。

我也试过这个,在_review.html.erb文件中粘贴它:

<script>
$('#edit_link').click(function(){
    $('#review_<%= review.id %>').animate({height:'250px'}, 350);
    //this method increases the height to 250px, with speed of .35 seconds
});
</script>

但它只在第一次审核时正确切换,位于列表顶部。此外,它增加了以下所有评论的大小。谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

您有错字错误,错过变量前的@符号;)

改变这个:

$('#review_<%= review.id %>').animate({height:'250px'}, 350);

对此:

$('#review_<%= @review.id %>').animate({height:'250px'}, 350);
               ^
               # Here, add the '@'
相关问题