Rails / jQuery AJAX没有成功

时间:2011-09-07 19:49:26

标签: jquery ruby-on-rails ajax

我有一个Rails应用程序,我有一些ajax调用,它通常工作得很好,但这个我可以工作:

我尝试从浏览器运行rails类,工作正常,我尝试在ajax调用之前使用params调用警报,工作正常..但没有连接,什么错了?

jQuery:

   $.ajax({
  url: "things/ajax_text_read",
  data: "book_id=" + book_id  + "&page_number=" + page_number  + "&type="+ type,
  success: function(){$(this).text('data'); }
});

Rails:

    def ajax_text_read
@book_id = params['book_id']
@page_number = params['page_number']  
@type = params['type']

@text = Thing.where(:parent_id => @page_number, :book => @book_id, :media_type => 'text')  

if(@type=='description')
render :inline => "<%= @text[0].description %>" 
else
render :inline => "<%= @text[0].title %>" 
end

end

2 个答案:

答案 0 :(得分:1)

假设things/ajax_text_read是有效的uri:

$.ajax({
  url: "things/ajax_text_read",
  data: "book_id=" + book_id  + "&page_number=" + page_number  + "&type="+ type,
  success: $.proxy(function(data){
      $(this).text(data);
  }, this)
});

答案 1 :(得分:0)

success: function(){$(this).text('data'); }

没有多大意义。在这种情况下,$(this)将成为成功函数,您是否尝试将其文本内容设置为“数据”一词?

也许你的意思是:

success: function(data) { $('#something_in_your_page').text(data); }

代替。