Javascript 如何在分部的内部加载分部?
我试图在加载页面时触发AJAX请求。我想这最好是我的控制器 首先我打开一个新的页面Javascript 如何在分部的内部加载分部?,javascript,ruby-on-rails,ruby,partial,renderpartial,Javascript,Ruby On Rails,Ruby,Partial,Renderpartial,我试图在加载页面时触发AJAX请求。我想这最好是我的控制器 首先我打开一个新的页面 def text_tabs_nav end 这个页面能够通过AJAX加载两个不同的部分。我想在默认情况下加载其中一个 所以我想也许这 def text_tabs_nav respond_to do |format| format.html format.js end end 在我的文本_tabs _nav.js中,我写道: == $("#content").html("#{ escap
def text_tabs_nav
end
这个页面能够通过AJAX加载两个不同的部分。我想在默认情况下加载其中一个
所以我想也许这
def text_tabs_nav
respond_to do |format|
format.html
format.js
end
end
在我的文本_tabs _nav.js中,我写道:
== $("#content").html("#{ escape_javascript(render :partial => 'about_us') }");
但是javascript没有加载..我在页面加载后使用相同的javascript加载东西,它工作正常
有人知道我如何加载一个部分文本选项卡导航,并在about-us中加载一个默认的AJAX部分吗
谢谢 它没有被解析,因为它在一个普通的js文件中。你想要的是
text_tabs_nav.js.erb在一场光荣的失败之战中,我抛弃了管制员,在我的视野中增加了一个常规呼叫
:javascript
$("#content").html("#{ escape_javascript(render :partial => 'about_us') }");
问题解决。香草味?隐马尔可夫模型。。我的文件名为text_tabs_nav.js。我将控制器切换为format.js.erb,文件也切换为format.js.erb,但它没有渲染。返回了未定义的方法“erb”,因为我没有遵循。。。您的文件应称为text_tabs_nav.js.erb。否则rails会假定它只是一个常规javascript文件,没有ruby可处理。line format.js保持不变。无论何时渲染任何内容,它都会查找该文件,例如不带扩展名的text_tabs_nav.js,或带有任何模板扩展名的.erb、.haml.Ah。。我忘了说我在用haml/sass。更进一步,我将其重命名为text_tabs_nav.js.haml。因此,如果我从控制器中删除format.html,它将加载到正确的内容中。但是有了它,它实际上并没有将AJAX加载到页面中,我强烈建议您在javascript中使用erb。考虑到您正在使用haml,我不知道您为什么在这行的开头有==。我感谢您的建议。我假设HAML JS不需要==。我认为问题可能是因为加载页面所需的ajax必须在加载页面之后发生。因为我希望它是默认的,所以我不想把它放在视图中,因为其他部分也必须在那里加载。尽管如此,我还是感谢你的评论