1
有一个奇怪的问题,试图通过rails中的AJAX更新搜索结果,在rails中将js.erb加载到页面上原始文本的<pre>
标记中,并且不会触发任何js文件。js.erb渲染文本不是JS
if request.format.js?
respond_to do |format|
format.js { render layout: false }
end
end
形式设置火灾AJAX与远程:真正
= form_tag(search_path, id: "form", remote: true, :'data-type' => 'script') do
index.je.erb
alert('hello');
$("#results").innerHTML("<%= escape_javascript(render partial: 'results', locals: { results: @results }) %>");
的routes.rb
match 'search', to: 'properties#index', via: :post, defaults: { format: 'js' }
在路由中,我尝试过强制js,因为之前它是JSON,但没有区别。 从日志中,控制器接收JS的请求,但我得到这个在Chrome调试器:
(index):69 Resource interpreted as Document but transferred with MIME type text/javascript: "http://localhost:3000/search".
坚持一个alert("Js is working")
作品没有问题,所以JS在那里,射击
林卡住,这应该是工作到现在为止,我错过了一些愚蠢的东西,还是我不知道的Rails 5中的新东西?
如果我可以提供任何更多的信息来帮助你halp我请问!
在此先感谢