Javascript 如何呈现另一个控制器中的JS.ERB文件?

Javascript 如何呈现另一个控制器中的JS.ERB文件?,javascript,jquery,ruby-on-rails,Javascript,Jquery,Ruby On Rails,我不太明白我的代码出了什么问题-它甚至导致我的服务器挂断 我需要做的是让控制器返回一个JS脚本,当执行该脚本时,它将向我的$(“.reviews”)追加一个呈现部分 #test.html.erb $.getScript(“/test”); #控制器 想做什么 呈现:部分=>“/shared/activity” 结束 #/共享/activity.js.erb $(“#评论”)。追加(“/shared/activity”)%>”; 我怀疑我在控制器中请求渲染的方式有问题。事实上,它会抛出各种奇怪的

我不太明白我的代码出了什么问题-它甚至导致我的服务器挂断

我需要做的是让控制器返回一个JS脚本,当执行该脚本时,它将向我的$(“.reviews”)追加一个呈现部分

#test.html.erb
$.getScript(“/test”);
#控制器
想做什么
呈现:部分=>“/shared/activity”
结束
#/共享/activity.js.erb
$(“#评论”)。追加(“/shared/activity”)%>”;

我怀疑我在控制器中请求渲染的方式有问题。事实上,它会抛出各种奇怪的错误。

你把自己称为你的部分错误。所以你有一个无限循环。

你称自己为局部循环。因此您有一个无限循环。

由于您同时拥有
activity.js.erb
activity.html.erb
,如果您指定要渲染的循环,它可能会有所帮助:

# test.html.erb
$.getScript("/test");

# controller
wants.js do
  render :partial => "/shared/activity.js.erb"
end

#/shared/activity.js.erb
$("#reviews").append("<%= escape_javascript(render(:partial => '/shared/activity.html.erb' )) %>");
#test.html.erb
$.getScript(“/test”);
#控制器
想做什么
render:partial=>“/shared/activity.js.erb”
结束
#/共享/activity.js.erb
$(“#评论”).append(“'/shared/activity.html.erb'))%>”;

由于您既有
activity.js.erb
又有
activity.html.erb
,如果您指定要渲染哪一个,可能会有所帮助:

# test.html.erb
$.getScript("/test");

# controller
wants.js do
  render :partial => "/shared/activity.js.erb"
end

#/shared/activity.js.erb
$("#reviews").append("<%= escape_javascript(render(:partial => '/shared/activity.html.erb' )) %>");
#test.html.erb
$.getScript(“/test”);
#控制器
想做什么
render:partial=>“/shared/activity.js.erb”
结束
#/共享/activity.js.erb
$(“#评论”).append(“'/shared/activity.html.erb'))%>”;

正确的方法是什么?我很困惑-我在rails文档中找不到好的示例您想要什么?您的部分中没有输出。很抱歉造成混淆。我希望控制器呈现activity.js.erb,它依次返回/shared/activity.HTML.erb。我需要“/shared/activity.js.erb”来呈现“/shared/activity.HTML.erb”。我已经更新了这个问题,以反映我需要在js文件中运行javascript代码,以便在我的主文件中呈现html部分,正确的方法是什么?我很困惑-我在rails文档中找不到好的示例您想要什么?您的部分中没有输出。很抱歉造成混淆。我希望控制器呈现activity.js.erb,它依次返回/shared/activity.HTML.erb。我需要“/shared/activity.js.erb”来呈现“/shared/activity.HTML.erb”。我已经更新了这个问题,以反映我需要在js文件中运行javascript代码,以便在我的主文件中呈现html部分