如何在RAILS中呈现AJAX响应

好的,非常简单的问题,我使用的是AJAX方法,它的作用是在数据库中搜索查询的特定信息。 我可以在控制台中看到正在进行查询,我甚至可以在Chrome开发者控制台中看到“发布”,当我点击它时,我可以看到我想要显示的HTML,但我对如何看待它没有任何想法在页面中渲染ir。 在此处输入图像描述

:3000 /已经有我要显示的HTML,但我该如何更新?

我展示它的方式是……

 
<a href="https://stackoverflow.com/questions/8797692/how-to-render-the-ajax-response-in-rails/">Show

@itemsok是我从查询中保存项目的变量。

谢谢,我想我在这里错过了一些非常愚蠢的东西。 对不起我糟糕的英语。

更新:控制器看起来像这样:

 def index size1 = params[:size1] number1 = params[:number1] number2 = params[:number2] quiero = params[:quiero] tengo = params[:tengo] if (not number1.nil?) and (number1 != "") item1 = Item.find(number1) elsif not quiero.nil? quiero.strip! item1 = Item.find(:first, :conditions => ['lower(description) LIKE ?', "%#{quiero.downcase}%"]) end if (not number2.nil?) and (number2 != "") item2 = Item.find(number2) elsif not tengo.nil? tengo.strip! item2 = Item.find(:first, :conditions => ['lower(description) LIKE ?', "%#{tengo.downcase}%"]) end if (item1 and item2) @itemsok = Contribution.where("first_item_id = ?",item1.id).where("second_item_id = ?",item2.id).where("second_item_grade = ?",size1) respond_to do |format| format.html format.js end end 

在您的respond_to块中,将format.js放在format.html之上。

确保控制器的视图文件夹中有index.js.erb。 如果您使用的是rails 3.1+,则index.js.erb(来自操作名称)应该具有如下所示的jQuery语句:

 $('#DOMelementToPlaceContent').html(<%= escape_javascript(render :partial => "partial/location") %>); 

这将使用ID DOMelementToPlaceContent将DOM元素的内容替换为指定partial中的内容。

此外,您应该考虑将搜索逻辑移动到同一控制器中的搜索操作,在这种情况下,您需要在控制器的视图文件夹中使用search.js.erb文件。