在我的应用中,我有一个页面,用户可以看到所有评论都列在另一个下面。每个评论都有一个“编辑”链接:
<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>
但它只在第一次审核时正确切换,位于列表顶部。此外,它增加了以下所有评论的大小。谢谢你的帮助。
答案 0 :(得分:1)
您有错字错误,错过变量前的@
符号;)
改变这个:
$('#review_<%= review.id %>').animate({height:'250px'}, 350);
对此:
$('#review_<%= @review.id %>').animate({height:'250px'}, 350);
^
# Here, add the '@'