replace_html在rjs中不起作用后的visual_effect

时间:2010-03-04 18:07:12

标签: ruby-on-rails ruby ajax rjs

在学习ruby on rails我创建了一个博客网站。当用户通过AJAX添加帖子时,会调用以下rj:

page.replace_html 'posts',  :partial => @posts
page.visual_effect :Highlight, 'post_' + @post.id.to_s

然而,亮点并没有发生..即使是隐藏也没有任何影响。

线索:

  • 如果我只是执行insert_html,它会起作用 只是新帖(但我想要 更新整个帖子列表 此时)
  • 如果我将id硬编码到序列中的下一个id,它在帖子上不起作用,但它确实适用于下一篇文章。 {ex .. hardcode post_100 ...提交100时没有突出显示,提交101时突出显示100}
  • 警告显示'post_'+ @ post.id.to_s是预期的(post_100等)

有任何想法或调试建议吗?

谢谢, 奥兰多

2 个答案:

答案 0 :(得分:0)

你可以在visual_effect之前提醒$(“post_#{@post.id}”)的innerHTML。

当firebug到达visual_effect时会给你一个错误吗?

你可以做一些其他的事情,比如visual_effect行之后的警报吗?

您是否包含所需的js文件?

答案 1 :(得分:0)

这不是问题的答案,但我已经废除了对rjs的依赖。相反,我遵循这里概述的模式

http://blog.solnic.eu/2007/10/30/why-javascript-helpers-in-rails-are-evil

现在所有效果都按预期工作。请注意,当使用本应在此处工作的相同代码添加注释时,我确实可以使效果正常工作,所以我相信只会出现某种奇怪的操作符错误。