0

我尝试在我的一个 Rails 项目中实现投票功能。我使用以下代码(在 vote.rjs 中)将页面替换为部分模板(_vote.rhtml)。但是当我点击时,投票数无法立即更新。我必须刷新页面才能看到更改。

投票.rjs

page.replace("votes#{@foundphoto.id}", :partial=>"vote", :locals=>{:voteable=>@foundphoto})

部分模板如下:

_vote.rhtml

">
<%= link_to_remote "+(#{voteable.votes_for})",
:update=>"vote",
:url => { :action=>"vote",
:id=>voteable.id,
:vote= >"for"} %>
/
<%= link_to_remote "-(#{voteable.votes_against})",
:update=>"vote",
:url => { :action=>"vote",
:id=>voteable .id,
:vote=>"反对"} %>

有任何想法吗?谢谢。

4

2 回答 2

0

您是否在代码中包含“prototype.js”

于 2010-05-04T04:53:55.317 回答
0

请使用萤火虫检查响应,我相信对服务器的调用成功并且它也在更改数据。如果您在 development.log 中发现任何错误,请发布,尝试通过提供一个简单的方法来测试您的应用程序

page.alert "some alert" 

请在您的 vote.rjs 中保留以上行,看看您是否收到了一些警报。

如果你的 development.log 文件中没有错误,那么你可能忘记在页面中包含 javascripts,或者如果你正在使用 jquery javascript 库但忘记安装 jrails。

请发布您的日志一次以明确此问题。

于 2010-05-20T08:06:24.273 回答