我有两个关注/取消关注表单在我的Rails代码中。它们长这样:
<%= form_tag( {:controller => 'profile', :action => 'unfollow_topic' }) do %>
<%= hidden_field_tag :topic_id, @topic.id %>
<button class="question_button" type="submit">Unfollow</button>
<% end %>
并且这个:
<%= form_tag({:controller => 'profile', :action => 'follow_topic' }) do %>
<%= hidden_field_tag :topic_id, @topic.id %>
<button class="question_button" type="submit">Follow</button>
<% end %>
然后我有这段JavaScript代码:
<script type="text/javascript">
$(function(){
$('#follow form').submit(function(e) {
$.ajax({
url: this.action,
type: 'POST',
data: $(this).serialize(),
success: function(response){ $('#follow').html(response); }
});
return false;
});
});
</script>
我的问题是如何从控制器中返回适当的“关注/取消关注”局部视图,以便可以用返回的响应替换它。
我目前有以下代码,但似乎不起作用:
respond_to do |format|
format.html { redirect_to('/' + topic.type + '/' + topic.uri) }
format.js { render :partial => 'unfollow_topic' }
end
但是,如果它渲染整个页面,我相信它实际上是响应于 format.html 而不是 format.js。你有什么想法吗?
alert("Hello!");
这样做可能会告诉你是否成功获取了你的部分文件。 - ipd