在使用了大量试验和错误超过一个小时以及数十个教程和博客发布示例之后,我仍然无法使用简单的ajax功能。以下是我的部分内容:
<span id="friend">
<%= link_to_remote image_submit_tag("/images/add_as_friend.gif"), :url => {:controller => 'friends', :action => 'add', :id => id} %>
</span>
这就是我的控制器:
class FriendsController < ApplicationController
def add
unless params[:id].nil?
Friend.create(:user_id => @current_user.id, :friend_id => params[:id], :friend_type => 2)
end
end
end
这是我的add.rjs文件中的内容:
page.replace_html 'friend', "A request to be friends with this player has been sent."
链接的图像很好。然而,当我点击它时,没有任何反应。我检查了数据库,没有任何进展。我一定错过了什么,有什么想法吗?
答案 0 :(得分:1)
可能是因为您使用image_submit_tag
而不是image_tag
来获取链接的内容。 image_submit_tag
用于提交表单,因此会有自己的onclick行为,可能会覆盖将作为link_to_remote
功能的一部分添加的onclick行为。
我会尝试:
<%= link_to_remote image_tag("/images/add_as_friend.gif"),
:url => {:controller => 'friends', :action => 'add', :id => id} %>