Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用javascript(在view.js.erb中)生成rails视图?_Javascript_Ruby On Rails_Ajax - Fatal编程技术网

如何使用javascript(在view.js.erb中)生成rails视图?

如何使用javascript(在view.js.erb中)生成rails视图?,javascript,ruby-on-rails,ajax,Javascript,Ruby On Rails,Ajax,在客户端,浏览器发送一个ajax请求,如下所示: link_to( "#{sir.sir_id}", "results/#{sir.id}", remote: true, format: :js ), 在服务器端由我的控制器的show action作为JS处理: def show @sir_id = params[:id] @spectrum_identification_items = SpectrumIdentificationResult.find(@sir_id).

在客户端,浏览器发送一个ajax请求,如下所示:

link_to( "#{sir.sir_id}", "results/#{sir.id}", remote: true, format: :js ),
在服务器端由我的控制器的
show action
作为
JS
处理:

  def show
    @sir_id = params[:id]
    @spectrum_identification_items = SpectrumIdentificationResult.find(@sir_id).spectrum_identification_items
    respond_to do |format|
      format.html 
      format.js { } 
    end
  end
到目前为止,这是正确处理的。现在,我创建了一个带有一行内容的
show.js.erb

$("<%= escape_javascript render(file: 'spectrum_identification_results/show.haml') %>").appendTo('table#sii_table');
当调用非ajax和呈现html时,我可以检查show操作的内容是否正确处理

此外,我在chrome inspector中没有看到任何javascript错误

但是,“显示视图”文件的内容没有出现在任何位置


我在这里遗漏了什么?

您在
附录之前遗漏了
是的,遗漏了,但仍然不起作用。show.haml的内容不会出现在任何地方JS控制台和网络日志中有什么?当我点击ajax链接时,JS控制台不会显示任何错误,网络日志显示
200 OK
结果。我在网络日志(chrome inspector)中看到,有一个javascript响应生成了一个文件(响应200 OK)但在该文件的预览中,我看到,
show.haml
的内容并没有附加到我想要的位置,而是放在一个内容标签中:`$(“Osea,你好吗?”).appendTo('table#sii_table')`
Rendered spectrum_identification_results/show.haml (0.4ms)
Rendered spectrum_identification_results/show.js.erb within layouts/application (2.4ms)
Completed 200 OK in 44ms